# Tatum Developer Documentation Documentation ## Guides - [GP - Error invalid BigNumber string](https://docs.tatum.io/docs/gp-error-invalid-bignumber-string.md) - [GP - Setting Up Gas Pump from A to Z](https://docs.tatum.io/docs/gp-setting-up-gas-pump.md) - [GP - Transferring out from a Gas Pump Address](https://docs.tatum.io/docs/gp-transfer-out-from-a-slave-gp-contract-address.md) - [GP - Use Case and Functionalities](https://docs.tatum.io/docs/gp-use-case-and-functionalities.md) - [Gas Pump](https://docs.tatum.io/docs/gas-pump-guide.md) - [KMS](https://docs.tatum.io/docs/tatum-key-management-system-kms.md): Tatum Key Management System (KMS): Secure Blockchain Custodial Solutions - manage and automate blockchain credentials with enhanced safety and efficiency. - [Download, Install, Setup & Run KMS](https://docs.tatum.io/docs/kms-download-and-install-steps.md) - [KMS General FAQ](https://docs.tatum.io/docs/kms-general-faq.md) - [Bitcoin Flow from A to Z (KMS)](https://docs.tatum.io/docs/kms-btc-flow-from-a-to-z.md) - [Checking Pending Transactions](https://docs.tatum.io/docs/kms-checking-pending-transactions.md): Checking Pending Transactions for KMS - [KMS Environment Variables](https://docs.tatum.io/docs/kms-environment-variables.md): KMS - Environment Variables - [Solana and Generating Addresses (KMS)](https://docs.tatum.io/docs/kms-solana-and-generating-addresses.md) - [KMS Security Basics](https://docs.tatum.io/docs/kms-security-basics.md) - [Use Case and Functionalities](https://docs.tatum.io/docs/kms-use-case-and-functionalities.md): KMS Use Case and Functionalities - [Monitoring Broadcasted Transactions with KMS](https://docs.tatum.io/docs/monitoring-broadcasted-transactions-with-kms.md) - [🧾 Transaction Simulator](https://docs.tatum.io/docs/transaction-simulator.md): Transaction Simulator integrates seamlessly with Tatum SDK to provide transaction simulation capabilities for EVM-based blockchains. - [Simulate Transfer Erc20](https://docs.tatum.io/docs/simulate-transfer-erc20.md) - [Simulate Transfer](https://docs.tatum.io/docs/simulate-transfer.md): This function helps you to simulate a native transfer by passing a payload to the function simulateTransfer of the extension '@tatumio/transaction-simulator' - [Creating End User Accounts](https://docs.tatum.io/docs/creating-accounts.md) - [Adding FIAT Currencies](https://docs.tatum.io/docs/va-adding-fiat-currencies.md) - [Creating End User Accounts: Gas Pump (EVM)](https://docs.tatum.io/docs/va-creating-end-user-accounts-gas-pump.md) - [Creating End User Accounts: Introduction](https://docs.tatum.io/docs/va-creating-end-user-accounts-introduction.md) - [Creating End User Accounts: EVM (like Ethereum)](https://docs.tatum.io/docs/va-creating-user-accounts-evm.md) - [Creating End User Accounts: UTXO (like Bitcoin)](https://docs.tatum.io/docs/va-creating-user-accounts-utxo.md) - [Creating End User Accounts: XRP and XLM](https://docs.tatum.io/docs/va-creating-user-accounts-xrp-xlm.md) - [End User Journey and QoL Endpoints](https://docs.tatum.io/docs/end-user-journey-and-qol-endpoints.md) - [Block and Unblock Funds from an Account](https://docs.tatum.io/docs/va-block-unblock-funds-from-an-account.md): Block and Unblock Funds from a Virtual Account - [Deleting Unused Virtual Accounts](https://docs.tatum.io/docs/va-deleting-unused-virtual-accounts.md) - [End User Journey](https://docs.tatum.io/docs/va-end-user-journey.md): End User Journey with Virtual Accounts - [Retrieve Account Details and Balances](https://docs.tatum.io/docs/va-list-accounts-details-and-balances.md): Retrieve Account Details and Balances from Virtual Accounts - [Retrieve Transactions and Withdrawals](https://docs.tatum.io/docs/va-retrieve-transaction-details-from-an-account.md): Retrieve Transactions and Withdrawals from Virtual Accounts - [Find all Deposits from a Virtual Account](https://docs.tatum.io/docs/find-all-deposits-from-a-virtual-account.md) - [Generating a Deposit Address: Introduction](https://docs.tatum.io/docs/generating-a-deposit-address.md): How to Generate Deposit Addresses in a Virtual Account - [Deposit Addresses](https://docs.tatum.io/docs/handling-deposit-addresses.md) - [Assign an external Address as a Deposit Address](https://docs.tatum.io/docs/va-adding-an-external-address-as-deposit-address.md): Assign an external address as a deposit address into a Virtual Account - [Find all Deposit Addresses within an Account](https://docs.tatum.io/docs/va-find-all-deposit-addresses.md): Find all deposit addresses within a Virtual Account - [Handling Gas Pump](https://docs.tatum.io/docs/handling-gas-pump.md) - [Assign an Gas Pump Address as a Deposit Address](https://docs.tatum.io/docs/va-assign-gp-address.md): Assign an Gas Pump Address as a Virtual Account Deposit Address - [Withdrawing From a Gas Pump Address](https://docs.tatum.io/docs/va-withdrawing-from-a-gas-pump-address.md): Withdrawing From a Gas Pump Address assigned as a Virtual Account Deposit Address - [Adding more tokens to the VA ledger](https://docs.tatum.io/docs/adding-more-tokens.md) - [Handling Tokens (EVM)](https://docs.tatum.io/docs/handling-tokens.md) - [MATIC_ETH to POL_ETH Migration](https://docs.tatum.io/docs/matic_eth-to-pol_eth-migration.md) - [Supported tokens (default)](https://docs.tatum.io/docs/supported-tokens-by-default.md) - [Handling Trading (Order Book)](https://docs.tatum.io/docs/handling-trading-order-book.md) - [Introducing Trading (1/4)](https://docs.tatum.io/docs/va-introducing-trading.md): Introducing Trading with Virtual Accounts - [Listing Closed Trades (4/4)](https://docs.tatum.io/docs/va-listing-closed-trades.md): Listing Closed Trades with Virtual Accounts - [Listing Open Trades (3/4)](https://docs.tatum.io/docs/va-listing-open-trades.md): Listing Open Trades with Virtual Accounts - [Opening a new Trade (2/4)](https://docs.tatum.io/docs/va-opening-a-new-trade.md): Opening a new Trade with Virtual Accounts - [Order Book: Future Trade and sealDate](https://docs.tatum.io/docs/va-order-book-future-trade-and-sealdate.md): Order Book: Future Trade and sealDate with Virtual Accounts - [Handling Transactions across Accounts (off-chain)](https://docs.tatum.io/docs/handling-transactions-off-chain.md) - [Retrieve a Payment Log](https://docs.tatum.io/docs/va-retrieve-a-payment-log.md): Retrieve a Payment Log from Virtual Accounts - [Send a Payment across Accounts (off-chain)](https://docs.tatum.io/docs/va-send-payment-off-chain.md): Send a Payment across Virtual Accounts - [Handling Withdrawals (on-chain)](https://docs.tatum.io/docs/handling-withdrawals.md) - [On chain Asset Management and Withdrawals](https://docs.tatum.io/docs/on-chain-balance-management-and-withdrawals.md): On chain Asset Management and Withdrawals with Virtual Accounts - [Manually Handling Withdrawals in Virtual Accounts (VA)](https://docs.tatum.io/docs/va-creating-a-manual-withdrawal.md): Creating a Manual Virtual Account Withdrawal - [Delete Withdrawals in the VA Ledger](https://docs.tatum.io/docs/va-deleting-withdrawals.md) - [Withdrawing From a Deposit Address](https://docs.tatum.io/docs/va-withdrawing-from-a-deposit-address.md): Withdrawing From a Virtual Account Deposit Address - [Withdrawing From a Master Exchange Address](https://docs.tatum.io/docs/withdrawing-assets-from-a-master-exchange-address.md): Withdrawing From a Virtual Account Master Exchange Address - [Withdrawing Assets: Introduction](https://docs.tatum.io/docs/withdrawing-assets-from-virtual-accounts.md) - [Virtual Accounts](https://docs.tatum.io/docs/virtual-accounts.md) - [General Use Case](https://docs.tatum.io/docs/va-general-use-case.md) - [Notifications and Virtual Accounts](https://docs.tatum.io/docs/va-notifications.md) - [Setting up an Exchange or Application](https://docs.tatum.io/docs/va-setting-up-your-exchange-or-application.md) - [Virtual Accounts FAQ](https://docs.tatum.io/docs/va-virtual-accounts-faq.md) - [Security Basics and Virtual Accounts](https://docs.tatum.io/docs/virtual-accounts-security.md) - [Data APIs](https://docs.tatum.io/docs/blockchain-data.md) - [Wallet Identification](https://docs.tatum.io/docs/get-all-assets-the-wallet-holds.md): This guide helps you to understand what a Domain is in web3 wallet terms and how to resolve them. - [Wallet History](https://docs.tatum.io/docs/get-all-fungible-tokens-the-wallet-holds.md): This function helps you to fetch all the fungible tokens a wallet holds, all you have to do is pass the address to the function parameter and chain while initialising the SDK. - [Wallet Asset Tracking](https://docs.tatum.io/docs/get-all-transactions-on-the-wallet.md): This guide talks about what are different token types and how to track the balances for those for a wallet. - [Portfolio Apps](https://docs.tatum.io/docs/data-insights.md): Portfolio apps make it easy for users to track and manage their digital assets across multiple blockchains in one place. In this guide we will see how you can make a portfolio app or a wallet tracker using Tatum's Data APIs. - [Token Details](https://docs.tatum.io/docs/show-fungible-token-history-of-a-wallet.md): This guide walks you through getting the token details to show in your apps. - [Crypto Heatmaps with Price API](https://docs.tatum.io/docs/crypto-heatmaps-with-prices-apis.md): Fetch absolute and percentage price changes for 439+ crypto trading pairs using custom time ranges or interval-based calculations. - [Exchange Rate by Symbol](https://docs.tatum.io/docs/get-current-exchange-rate-of-the-crypto-asset.md): This endpoint allows you to obtain current exchange rate between fiat/crypto or fiat/fiat. - [Exchange rates for multiple assets](https://docs.tatum.io/docs/get-current-rates-for-multiple-crypto-assets-at-once.md): This endpoint allows you to obtain current exchange rates between fiat/crypto or fiat/fiat. - [Exchange Rate by Contract Address](https://docs.tatum.io/docs/get-exchange-rate-by-contract-address.md): Get the current exchange rate for a token by blockchain and contract address. - [Get Fiat Exchange Rates](https://docs.tatum.io/docs/get-fiat-exchange-rates.md): Get the current exchange rate for exchanging fiat/crypto assets. - [Crypto Prices](https://docs.tatum.io/docs/exchange-rates.md): This helps any web3 app developer to quickly query the exchange rate of a crypto against more than 165 fiat currencies. - [Candle Price Chart with Price API](https://docs.tatum.io/docs/making-price-candle-chart-with-price-apis.md): Access reliable 1-minute cryptocurrency OHLCV data (Open, High, Low, Close, Volume) for 439+ trading pairs via Tatum’s Price Data API. - [Supported Crypto Currencies](https://docs.tatum.io/docs/supported-crypto-currencies.md): This page lists all the cryptocurrencies Tatum supports for the Exchange rate submodule. - [Supported Fiats](https://docs.tatum.io/docs/supported-fiats.md): This page lists all the Fiat currencies Tatum supports for Exchange Rate Submodule. - [BCASH - How Fee Estimate Works](https://docs.tatum.io/docs/bch-fee-estimate.md) - [BTC - Transaction Fee Estimation](https://docs.tatum.io/docs/btc-fee-estimate.md): Learn how to calculate Bitcoin transaction fees: formula, API calls, and examples with satoshis per byte (sat/vB). - [EVM - How Fee Estimate Works](https://docs.tatum.io/docs/evm-how-fee-estimate-works.md) - [JS SDK - Tatum Fee Submodule](https://docs.tatum.io/docs/getcurrentfee.md): This function fetches real-time gas fee data, including slow, medium, and fast fees, based on the most recent recalculation, providing transparency for blockchain transaction cost estimation. - [Fee Estimation](https://docs.tatum.io/docs/fee-estimation.md): Understand and implement blockchain fee & gas estimation on Bitcoin-like UTXO chains and EVM chains. Quick start examples, best practices, and FAQs. - [LTC - How Fee Estimate Works](https://docs.tatum.io/docs/ltc-how-fee-estimate-works.md) - [UTXO - Minimum Relay Fee](https://docs.tatum.io/docs/utxo-minimum-relay-fee.md) - [Check if the wallet owns a specific NFT](https://docs.tatum.io/docs/check-if-the-wallet-owns-a-specific-nft.md): This function checks if a wallet own's any or a specific nft from a collection, you can pass collection address, wallet address & tokenId as an option parameter. - [Get all NFTs in the NFT collection](https://docs.tatum.io/docs/get-all-nfts-in-the-nft-collection.md) - [Get all NFTs the wallet holds](https://docs.tatum.io/docs/get-all-nfts-the-wallet-holds.md): This function helps you to fetch all the NFT's a wallet holds, all you have to do is pass the address to the function parameter and chain while initialising the sdk. - [Get the metadata of a specific NFT](https://docs.tatum.io/docs/get-the-metadata-of-a-specific-nft.md) - [NFTs](https://docs.tatum.io/docs/nfts.md) - [Retrieve the owner of the NFT](https://docs.tatum.io/docs/retrieve-the-owner-of-the-nft.md) - [Show the NFT history of a wallet](https://docs.tatum.io/docs/show-the-nft-history-of-a-wallet.md) - [Trace the history of a specific NFT](https://docs.tatum.io/docs/trace-the-history-of-a-specific-nft.md) - [Stable Coins](https://docs.tatum.io/docs/stable-coins.md): Learn how stablecoins bridge traditional finance and blockchain, with guides for developers, banks, and auditors to integrate, manage, and audit digital stable assets. - [CBDCs & Bank-Issued Stablecoins](https://docs.tatum.io/docs/cbdcs-bank-issued-stablecoins.md): Overview of CBDCs and bank-issued stablecoins, explaining their features, benefits, and practical adoption options for banks. - [Stablecoin for Banks](https://docs.tatum.io/docs/stablecoin-for-banks.md): Overview of how banks can use stablecoins, CBDCs, and private bank tokens for faster, programmable, and compliant financial operations. - [Portfolio & Compliance](https://docs.tatum.io/docs/portfolio-compliance.md): Overview of real-time portfolio tracking, transaction reconciliation, and compliance for banks managing stablecoins and digital assets, with developer tools for easy integration. - [Private & Consortium Bank Stablecoins](https://docs.tatum.io/docs/private-consortium-bank-stablecoins.md): Overview of private and consortium bank stablecoins, highlighting their features, use cases, and benefits for secure, programmable banking operations. - [Stablecoin Integration Overview](https://docs.tatum.io/docs/stablecoin-integration-overview.md): Overview of stablecoin integration for banks and enterprises, highlighting implementation approaches, key considerations, and links to developer guides. - [Algorithmic Stablecoins](https://docs.tatum.io/docs/algorithmic-stablecoins.md): Overview of algorithmic stablecoins, detailing how they use smart contracts and supply-adjustment mechanisms to maintain a peg, with examples, features, use cases, and associated risks. - [Crypto-Backed Stablecoins](https://docs.tatum.io/docs/crypto-backed-stablecoins.md): Overview of stablecoins backed by cryptocurrencies, explaining how they maintain stability with over-collateralization, key features, examples, use cases, and risks. - [Fiat-Backed Stablecoins](https://docs.tatum.io/docs/fiat-backed-stablecoins.md): Fiat-backed stablecoins are digital assets backed 1:1 by fiat reserves, offering stability, liquidity, and simplicity for payments, trading, and treasury operations. - [Stablecoins 101](https://docs.tatum.io/docs/stablecoins-101.md): Stablecoins are cryptocurrencies designed for price stability, bridging traditional finance and blockchain for payments, DeFi, and treasury management. - [Stablecoins for Auditing Firms](https://docs.tatum.io/docs/stablecoins-for-auditing-firms.md): Overview of how auditors can verify, reconcile, and ensure compliance for stablecoin holdings using real-time, transparent blockchain data. - [Portfolio & Compliance for Auditors](https://docs.tatum.io/docs/portfolio-compliance-for-auditors.md): Guide for auditors on tracking, reconciling, and reporting stablecoin and digital asset holdings using real-time portfolio and transaction data. - [Regulatory Reporting](https://docs.tatum.io/docs/regulatory-reporting.md): Guide for auditors on using stablecoins to ensure AML/KYC compliance, accurate financial reporting, and audit-ready cross-border transaction tracking. - [Transaction Monitoring & Reconciliation](https://docs.tatum.io/docs/transaction-monitoring-and-reconciliation.md): Guide for auditors on leveraging stablecoins for real-time transaction monitoring, automated reconciliation, and verifiable audit trails. - [Address Management](https://docs.tatum.io/docs/address-management.md): Guide on generating and managing blockchain addresses for users using Tatum’s HD wallet and address APIs, including multi-chain support, secure key handling, deposit attribution, and best practices for scalable stablecoin integrations. - [Deposit Tracking / Transaction Alerts](https://docs.tatum.io/docs/deposit-tracking-transaction-alerts.md): Overview of Tatum’s Alert & Webhook APIs for real-time monitoring of stablecoin deposits, withdrawals, and on-chain events, including secure webhook handling, event filtering, and automated backend processing. - [Stablecoins for Developers](https://docs.tatum.io/docs/stablecoins-for-developers.md): Overview of stablecoin integration for developers, covering wallet management, real-time deposits, transfers, portfolio tracking, and secure on-chain operations using Tatum APIs. - [Stablecoin Transactions](https://docs.tatum.io/docs/stablecoin-transactions.md): Overview of Tatum’s Transaction APIs for sending, withdrawing, and transferring stablecoins securely, including on-chain execution, offline signing, multi-chain support, and fee estimation. - [Wallet Portfolio & Balance Tracking](https://docs.tatum.io/docs/wallet-portfolio-balance-tracking.md): Overview of Tatum’s Wallet Portfolio APIs, showing how to fetch real-time balances, transaction history, and multi-chain asset data for stablecoins, tokens, and NFTs to power dashboards, compliance, and analytics. - [Asset Aggregation & Portfolio Analysis](https://docs.tatum.io/docs/asset-aggregation-portfolio-analysis.md): Get a complete view of a wallet’s holdings across multiple blockchains. Track fungible tokens, native coins, NFTs, and multi-tokens in one consolidated portfolio using Tatum’s Get Wallet Portfolio endpoint, simplifying auditing, compliance, and investment tracking. - [Fraud Detection & Compliance](https://docs.tatum.io/docs/fraud-detection-compliance.md): Identify risky blockchain addresses before they impact your business. The Check Malicious Address endpoint verifies whether an address is associated with scams, stolen funds, or other fraudulent activity across Ethereum, Bitcoin, Litecoin, Solana, and Tron. - [Trace Source of Funds](https://docs.tatum.io/docs/get-transaction-history-api-guide.md): Quickly track the origin of funds for any wallet across supported blockchains. Identify incoming transactions, token and NFT sources, and counterparties. Filter, sort, and paginate results to analyze wallet activity and generate audit-ready transaction history. - [Historical Balances](https://docs.tatum.io/docs/historical-balances.md): Understanding how wallet balances have changed over time is essential for tax reporting, auditing, and portfolio tracking. - [Tax, Compliance & Auditing](https://docs.tatum.io/docs/tax-compliance-auditing-onchain.md): Blockchain transactions can be complex and pseudonymous, making audits and tax reporting challenging. This guide shows how Tatum Data API endpoints — from transaction history to wallet portfolios and malicious address checks — help trace funds, analyze assets, and ensure compliance efficiently. - [Notifications: Handling Blockchain Re-Orgs](https://docs.tatum.io/docs/handling-re-orgs.md) - [Notifications: Mempool](https://docs.tatum.io/docs/mempool-notifications.md) - [Notifications: Ignoring Multisig Transactions](https://docs.tatum.io/docs/notifications-and-multisig.md) - [Notifications: Bulk Operations](https://docs.tatum.io/docs/notifications-bulk-operations.md): Adding and removing multiple notifications at once. - [Notifications: Pricing](https://docs.tatum.io/docs/notifications-pricing.md) - [Notifications: Understanding "Unknown Error"](https://docs.tatum.io/docs/notifications-understanding-unknown-error.md) - [UTXO - Get Confirmations from a Transaction](https://docs.tatum.io/docs/utxo-get-confirmations-from-a-transaction.md) - [Get all existing monitoring alerts](https://docs.tatum.io/docs/get-all-existing-monitoring-subscriptions.md) - [Get all sent notifications](https://docs.tatum.io/docs/get-all-sent-notifications.md) - [Workflow](https://docs.tatum.io/docs/notification-workflow.md) - [Start monitoring of the address](https://docs.tatum.io/docs/start-monitoring-of-the-address.md) - [Stop monitoring of the address](https://docs.tatum.io/docs/stop-monitoring-of-the-address.md) - [Conditions & Filters](https://docs.tatum.io/docs/notifications-conditions-and-filters.md): Filter webhook notifications using conditions to receive only the events that matter to your application. - [Notifications](https://docs.tatum.io/docs/notifications.md): What is a Notification on a Blockchain? - [Templates](https://docs.tatum.io/docs/templates.md) - [Notifications: Attribute "type" and values](https://docs.tatum.io/docs/notifications-parameter-type-value.md) - [Notifications: Attributes "address" and "counterAddress"](https://docs.tatum.io/docs/notifications-understanding-address-and-counteraddress.md) - [Notifications: Allowed URLs for Webhooks](https://docs.tatum.io/docs/notifications-allowed-urls-for-webhooks.md) - [Authenticating Notification Webhooks](https://docs.tatum.io/docs/authenticating-notification-webhooks.md) - [Notifications: Authenticating with HMAC and Whitelisting IPs](https://docs.tatum.io/docs/notifications-tatum-ips-waf-and-hmac.md) - [Notifications: Stop Notifications](https://docs.tatum.io/docs/stop-notifications.md) - [Notifications: Webhook Retry Sender Service](https://docs.tatum.io/docs/webhook-retry-service.md) - [Developing with Hardhat, Truffle and Foundry](https://docs.tatum.io/docs/developing-with-hardhat-truffle-and-foundry.md) - [Fork or Recompile Tatum Smart Contracts](https://docs.tatum.io/docs/fork-and-recompile-tatum-smart-contracts.md) - [EVM - Create a Fungible Token](https://docs.tatum.io/docs/create-a-fungible-token-erc20.md) - [Get the Token Balance of an address - RPC Call](https://docs.tatum.io/docs/get-balance-of-erc-20-from-address-rpc-call.md) - [Get the Token Balance of an Address (ERC-20 or compatible)](https://docs.tatum.io/docs/get-erc-20-or-compatibletoken-balance.md) - [🪙 Fungible Tokens (ERC-20 and compatible)](https://docs.tatum.io/docs/fungible-tokens-erc20.md) - [Solana - Create a Fungible Token](https://docs.tatum.io/docs/solana-create-a-fungible-token-spl.md) - [Solana - Transferring Tokens](https://docs.tatum.io/docs/solana-transferring-fungible-tokens-spl.md) - [Retrieving Token Decimals (ERC-20 or compatible)](https://docs.tatum.io/docs/token-decimals-erc-20-or-compatible.md) - [TRON - Transferring Fungible Tokens (TRC-10 & TRC-20)](https://docs.tatum.io/docs/transferring-fungible-tokens-trc20.md) - [EVM - Transferring Fungible Tokens](https://docs.tatum.io/docs/transferring-tokens-erc-20.md) - [Get the contractaddress or tokenaddress from a transaction hash](https://docs.tatum.io/docs/getting-the-contractaddress-or-tokenaddress-from-a-transaction-hash.md) - [Smart Contracts](https://docs.tatum.io/docs/smart-contracts.md) - [Invoke method in a Smart Contract](https://docs.tatum.io/docs/invoke-method-in-a-smart-contract.md) - [How to Create MultiToken Collections (SDK)](https://docs.tatum.io/docs/create-multitoken-nft-collection-sdk.md) - [How to Mint Multi Tokens (ERC-1155)](https://docs.tatum.io/docs/how-to-mint-multi-tokens.md) - [How to transfer Multi Tokens](https://docs.tatum.io/docs/how-to-transfer-multi-tokens.md) - [Multi Tokens (ERC-1155)](https://docs.tatum.io/docs/multi-tokens-erc-1155.md) - [How to Create Multi Token Collections (REST API)](https://docs.tatum.io/docs/multi-token-create-collection-api.md) - [Algorand - NFTs Mint and Transfer to Recipient](https://docs.tatum.io/docs/algorand-nft-mint-and-transfer-to-recipient.md) - [EVM - Create a NFT Collection (SDK)](https://docs.tatum.io/docs/create-nft-collection.md) - [Flow - Mint and Transfer NFTs](https://docs.tatum.io/docs/flow-mint-and-transfer-nfts.md) - [🐒 Non-Fungible Tokens (ERC-721)](https://docs.tatum.io/docs/non-fungible-tokens-erc721.md) - [Algorand - Token URI: IPFS and max size](https://docs.tatum.io/docs/nft-algorand-ipfs.md) - [🏛️ NFT Auction](https://docs.tatum.io/docs/nft-auction-guide.md) - [EVM - Create a NFT Collection (REST API)](https://docs.tatum.io/docs/nft-create-collection.md) - [🐒 NFT Express](https://docs.tatum.io/docs/nft-express-guide.md): Mint NFTs without coding or owning crypto - [Metadata storage in NFTs, IPFS and Limits](https://docs.tatum.io/docs/nft-how-to-store-metadata-ipfs-and-limits.md) - [🛒 NFT Marketplace](https://docs.tatum.io/docs/nft-marketplace-guide.md): Peer-to-peer NFT marketplaces like OpenSea allow users to create NFTs with metadata (pictures, videos, songs, 3D art, etc.) and post listings to sell them to one another. - [EVM - Mint NFTs (ERC-721)](https://docs.tatum.io/docs/nft-minting-nfts.md) - [Solana - Mint and Transfer NFTs](https://docs.tatum.io/docs/solana-nft-mint-and-transfer-to-recipient.md) - [Tatum Smart Contract Verification & Audit](https://docs.tatum.io/docs/smart-contract-verification.md) - [Storage](https://docs.tatum.io/docs/storage.md): The InterPlanetary File System (IPFS) is a distributed and peer-to-peer system for storing and accessing files, websites, applications, and data. - [Upload File](https://docs.tatum.io/docs/ipfs-upload-file.md): This function helps a user to upload a new file on the Inter Planetary File Storage - [Wallet Operations](https://docs.tatum.io/docs/wallet-operations.md): A wallet, in the context of blockchain and cryptocurrencies, is a digital tool that allows users to securely store, manage, and transact with their digital assets such as cryptocurrencies and tokens. - [Algorand - Getting started (REST API)](https://docs.tatum.io/docs/algorand-getting-started-rest-api.md) - [Solana - Getting started (REST API)](https://docs.tatum.io/docs/solana-getting-started-rest-api.md) - [Celo - Getting Started (REST API)](https://docs.tatum.io/docs/celo-getting-started-rest-api.md) - [Ethereum - Getting Started (REST API)](https://docs.tatum.io/docs/ethereum-getting-started-api.md) - [Ethereum - Getting Started (SDK)](https://docs.tatum.io/docs/ethereum-getting-started-sdk.md) - [💻 EVM (like Ethereum)](https://docs.tatum.io/docs/wallet-provider-evm.md): Wallet Operations - EVM (like Ethereum) - [Polygon - Getting Started (REST API)](https://docs.tatum.io/docs/polygon-getting-started-rest-api.md) - [Approve the transfer of a fungible token like USDT](https://docs.tatum.io/docs/approve-the-transfer-of-a-fungible-token-like-usdt.md) - [Build your own custom transaction](https://docs.tatum.io/docs/build-your-own-custom-transaction.md) - [Connect a wallet](https://docs.tatum.io/docs/connect-wallet.md) - [Create your Fungible Token (ERC-20)](https://docs.tatum.io/docs/create-your-fungible-token.md) - [Create your NFT Collection](https://docs.tatum.io/docs/create-your-nft-collection.md) - [Create your NFT (ERC-1155 MultiToken) Collection](https://docs.tatum.io/docs/create-your-nft-erc-1155-multitoken-collection.md) - [💻 MetaMask](https://docs.tatum.io/docs/wallet-provider-metamask.md): Wallet Operations - MetaMask - [Transfer fungible tokens like USDT](https://docs.tatum.io/docs/transfer-fungible-tokens-like-usdt.md) - [Transfer native assets](https://docs.tatum.io/docs/transfer-native-assets.md) - [Transfer your NFT](https://docs.tatum.io/docs/transfer-your-nft.md) - [Generate Address](https://docs.tatum.io/docs/generate-address-tezos.md) - [Generate Mnemonic](https://docs.tatum.io/docs/generate-mnemonic-tezos.md) - [Generate Private Key](https://docs.tatum.io/docs/generate-private-key-tezos.md): Generate private key from Mnemonic - [Get Private Key, Address, and Mnemonic](https://docs.tatum.io/docs/get-private-key-address-and-mnemonic-tezos.md) - [💻 Tezos](https://docs.tatum.io/docs/wallet-provider-tezos.md): Wallet Operations - Tezos - [💻 Tron](https://docs.tatum.io/docs/wallet-provider-tron.md): Wallet Operations - Tron - [Tron - Getting Started (REST API)](https://docs.tatum.io/docs/tron-getting-started-api.md) - [Tron - Getting Started (SDK)](https://docs.tatum.io/docs/tron-getting-started-sdk.md) - [Bitcoin - Getting Started (REST API)](https://docs.tatum.io/docs/bitcoin-getting-started-api.md) - [Bitcoin - Getting Started (SDK)](https://docs.tatum.io/docs/bitcoin-getting-started-sdk.md) - [💻 UTXO (like Bitcoin)](https://docs.tatum.io/docs/wallet-provider-utxo.md): Wallet Operations - UTXO (like Bitcoin) - [gRPC Data Streams](https://docs.tatum.io/docs/grpc-data-streams.md): gRPC Data Streams enable real-time access to blockchain data with low latency and high throughput. Stream blocks, transactions, and on-chain events efficiently without polling. - [gRPC Structured Queries](https://docs.tatum.io/docs/grpc-structured-queries.md) - [Data Streaming & Real-Time Feeds](https://docs.tatum.io/docs/data-streaming-rpc-grpc-websockets.md): Stream real-time blockchain data with Tatum using gRPC and WebSocket subscriptions, or perform high-performance structured queries using gRPC request-response. - [Error Codes](https://docs.tatum.io/docs/gateway-error-code-reference.md): Learn how the Tatum RPC handles errors using JSON-RPC 2.0 and custom error codes that identify validation issues, rate limits, and upstream node failures. - [Bring Your Own RPC](https://docs.tatum.io/docs/bring-your-own-rpc.md): Bring Your Own RPC lets you add third-party or self-hosted RPC endpoints to your Custom Gateway, so you can define a proper routing strategy and build a reliable, high-availability RPC setup. - [Custom RPC Gateways](https://docs.tatum.io/docs/custom-blockchain-rpc-gateways.md): Custom RPC Gateways let you bring your own providers, set routing rules, and combine multiple endpoints for redundancy, failover, and better performance. - [Limits and Method Availability](https://docs.tatum.io/docs/gateway-limits.md): Understand the creation limits, method restrictions, and plan-based capabilities of Tatum’s RPC Gateway, including block-range limits, item caps, and validation rules. - [RPC Gateway](https://docs.tatum.io/docs/rpc-gateway.md): The RPC Gateway is a middleware that sits in front of your node pool, handling routing, failover, and consistency to ensure highly available and reliable RPC access. - [Routing Strategies](https://docs.tatum.io/docs/routing-strategies.md): Explore the routing strategies available in Tatum’s RPC Gateway and learn how to use them to control traffic flow across your connected RPC endpoints. - [Method-specific Routing](https://docs.tatum.io/docs/rpc-gateway-method-specific-routing.md): Method-specific Routing lets you apply a custom routing strategy per RPC method to optimize reliability, cost, and provider compatibility. - [Load Distribution](https://docs.tatum.io/docs/rpc-gateway-routing-load-distribution.md): Balance RPC traffic across multiple providers with Load Distributed routing. Supports equal-weight distribution, health-aware rotation, and upcoming dynamic weights for custom gateway configuration. - [Priority Failover](https://docs.tatum.io/docs/rpc-gateway-routing-priority-failover.md): Learn how Priority Failover routing ensures maximum API reliability by automatically switching to backup endpoints when your primary provider fails, with seamless recovery. - [Usage & Analytics](https://docs.tatum.io/docs/rpc-gateway-usage-analytics.md) - [Endpoint Health Monitor](https://docs.tatum.io/docs/endpoint-health-monitor.md): Continuously checks RPC providers for latency, timeouts, and stale blocks, automatically removing unhealthy endpoints so your Gateway stays stable and reliable. - [PowerUps](https://docs.tatum.io/docs/rpc-powerups.md): PowerUps are advanced add-ons that significantly improve the performance, security, and reliability of your RPC Gateway. Combine multiple PowerUps to create a powerful, highly resilient RPC stack tailored to your needs. - [Intelligent Data Routing](https://docs.tatum.io/docs/intelligent-data-routing.md): Routes each RPC call to the most up-to-date endpoint by monitoring real-time block freshness across all connected providers. - [MEV Protection](https://docs.tatum.io/docs/mev-protection-transaction-bradcasting.md): Protect your blockchain transactions from frontrunning, backrunning, sandwich attacks, and mempool sniping with Tatum’s MEV Protection. Transactions are automatically routed through private relays, ensuring cleaner execution, reduced slippage, and faster block inclusion — with zero configuration required. - [RPC Accelerator](https://docs.tatum.io/docs/rpc-accelerator-blockchain-cache.md): Delivers faster responses by caching recent blockchain data. - [Block Finality (Reorgs)](https://docs.tatum.io/docs/evm-block-finality-and-confidence.md): Block finality indicates how secure a transaction is against blockchain reorganizations (reorgs). Ethereum uses block tags such as latest, safe, and finalized to show increasing levels of certainty. While latest blocks may still change, safe blocks are highly reliable and finalized blocks are effectively immutable. Understanding these tags helps developers avoid processing data that could later be reversed. - [Archival Data](https://docs.tatum.io/docs/full-nodes-and-archive.md): Tatum’s Gateway simplifies blockchain connectivity with an intelligent balancing engine that dynamically routes your RPC requests based on the request type and real-time node conditions — giving you a single, seamless access point to reliable blockchain data. - [RPC Nodes](https://docs.tatum.io/docs/rpc-nodes.md): Understand what RPC nodes are and how they enable blockchain applications. Learn how RPC requests work, common development use cases, and pricing for different RPC methods across 130+ supported networks. - [Batch Calls](https://docs.tatum.io/docs/rpc-batch-calling.md): This page provides information on making batch calls to our RPC nodes, allowing multiple requests to be processed simultaneously. Batch calling is particularly useful for scenarios that require data from multiple blocks or transactions. - [Usage & Analytics](https://docs.tatum.io/docs/rpc-nodes-usage-analytics.md) - [Supported Blockchains](https://docs.tatum.io/docs/supported-blockchains.md): Tatum supports many blockchain protocols and nearly limitless assets in a single unified API and SDK. The level of support for different protocols varies and we grade them into three tiers outlined below. - [Overview](https://docs.tatum.io/docs/wallet-sdk-overview.md): Create secure MPC wallets, sign transactions, sponsor gas, and recover accounts across multiple chains in a flexible custody model fro your users. - [Smart Wallet SDK](https://docs.tatum.io/docs/wallet-sdk.md): Create MPC wallets, sign and send transactions, and manage end-user clients with the Tatum Wallet SDK for TypeScript. - [Installation & Quick Start](https://docs.tatum.io/docs/wallet-sdk-installation-quick-start.md): Get started with the Tatum Wallet SDK. Create MPC wallets, securely manage signing shares, and send transactions across supported blockchains. - [Supported Chains](https://docs.tatum.io/docs/wallet-sdk-supported-chains.md): Explore chain support, curve abstraction, RPC handling, and share selection for supported blockchains. - [Wallet Management](https://docs.tatum.io/docs/wallet-sdk-wallet-management.md): Learn how to create clients, generate MPC wallets, manage sessions, retrieve wallet details, and enable key eject for user-controlled wallet ownership. - [Sessions](https://docs.tatum.io/docs/wallet-sdk-client-sessions.md): Generate short-lived Client Session Tokens (CSTs) to securely authenticate frontend and mobile applications without exposing permanent client API keys. - [Clients](https://docs.tatum.io/docs/wallet-sdk-clients.md): Create and manage clients, retrieve wallet addresses and metadata, inspect share statuses, and access client-scoped wallet operations. - [Authentication Errors](https://docs.tatum.io/docs/authentication-errors.md) - [Compromised Assets - Exposed Mnemonics and PrivateKeys](https://docs.tatum.io/docs/compromised-assets-exposed-mnemonics-and-privatekeys.md) - [Managing API Keys](https://docs.tatum.io/docs/compromised-auth-api-keys.md): Keeps your environment secure: create, regenerate or delete API keys - [Authentication & Security](https://docs.tatum.io/docs/authentication.md): When using the Tatum REST API or SDK, you need to authenticate yourself with an API key. - [Managing Mnemonics and PrivateKeys](https://docs.tatum.io/docs/lost-mnemonics-and-or-privatekeys.md) - [Malicious Addresses](https://docs.tatum.io/docs/security-malicious-address.md) - [Signing Transactions Over REST API](https://docs.tatum.io/docs/signing-transactions-over-rest-api.md) - [SOC 2, InfoSec Questionnaires, and Other Security Certifications](https://docs.tatum.io/docs/soc-2-infosec-questionnaires-and-other-security-certifications.md) - [Welcome to Tatum](https://docs.tatum.io/docs/getting-started.md): Ready to build fantastic blockchain applications? - [Build your first web3 app](https://docs.tatum.io/docs/build-your-first-web3-app-with-tatum-sdk.md): Welcome to the Tatum SDK Demo: Simplifying Blockchain Development! 🚀 - [Configuration options](https://docs.tatum.io/docs/configuration-options.md) - [JavaScript SDK](https://docs.tatum.io/docs/javascript-sdk.md): Tatum offers JavaScript/TypeScript SDK which helps developers to build dApps. - [Logging](https://docs.tatum.io/docs/logging.md) - [Submodules](https://docs.tatum.io/docs/submodules.md): A quick overview of th different submodules in Tatum SDK and how they simplify blockchain development. These submodules include RPC, Notification, NFT, Address, and Wallet Provider. - [Learn Blockchain](https://docs.tatum.io/docs/learn-blockchain.md) - [Blockchain & Crypto](https://docs.tatum.io/docs/introducing-blockchain-and-crypto.md) - [Coins & Tokens](https://docs.tatum.io/docs/introducing-coins-vs-tokens.md) - [Mainnet vs Testnet](https://docs.tatum.io/docs/introducing-mainnet-and-testnet.md): Learn the differences between Mainnet and Testnet in blockchain development. Discover how Mainnet handles real-value transactions, while Testnet provides a safe environment for testing without financial risk. Perfect for developers and blockchain enthusiasts. - [Blockchain Gas Fees](https://docs.tatum.io/docs/blockchain-gas-fees.md) - [Wallets](https://docs.tatum.io/docs/introducing-wallets.md) - [Blockchain Addresses](https://docs.tatum.io/docs/introducing-blockchain-addresses.md) - [UTXO vs Account Model](https://docs.tatum.io/docs/introducing-transactions-utxo-vs-account-model.md) - [Tatum's Derivation Path](https://docs.tatum.io/docs/mnemonic-derivation-path.md) - [Understanding and Handling Nonce in EVM Chains](https://docs.tatum.io/docs/nonce-what-is-it-and-optional-use.md) - [The meaning of owning crypto](https://docs.tatum.io/docs/the-meaning-of-owning-crypto.md) - [Plans & Limits](https://docs.tatum.io/docs/plans-limits.md): It’s simple. Tatum is free to start - and lets you grow when you need to. - [Documentation MCP](https://docs.tatum.io/docs/tatum-documentation-mcp.md): Connect Cursor, Windsurf, Claude, and other AI tools to Tatum docs and APIs. Search guides, explore OpenAPI endpoints, and optionally run live API calls with your Tatum API key. - [Testnet Faucets](https://docs.tatum.io/docs/testnet-faucets.md): Tatum has the largest collection of testnet faucets online. - [Get Block by Hash or Height: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-block-by-hash-or-height-api-migration-v3-to-v4.md) - [Get Block Hash by Block Number: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-block-hash-by-block-number-api-migration-v3-to-v4.md) - [Get Current Block Height: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-current-block-height-migration-v3-v4.md) - [Get Internal Transactions by Address: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-internal-transactions-by-address-api-migration-v3-to-v4.md) - [Get Mempool Transaction Hashes: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-mempool-transaction-hashes-api-migration-v3-to-v4.md) - [Get Native Balance: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-native-balance-api-migration-v3-to-v4.md) - [Get Native Balance (batch): API Migration (v3 to v4)](https://docs.tatum.io/docs/get-native-balance-batch-api-migration-v3-to-v4.md) - [Get Outgoing Transaction Count: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-outgoing-transaction-count-api-migration-v3-to-v4.md) - [Get Transaction by Hash: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-transaction-by-hash-api-migration-v3-to-v4.md) - [Get Transaction History (UTXO): API Migration (v3 to v4)](https://docs.tatum.io/docs/get-transaction-history-utxo-api-migration-v3-to-v4.md) - [Get Transaction History (UTXO) Batch: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-transaction-history-utxo-batch-api-migration-v3-to-v4.md) - [Get UTXO Info by Tx Hash and Index: API Migration (v3 to v4)](https://docs.tatum.io/docs/get-utxo-info-by-tx-hash-and-index-api-migration-v3-to-v4.md) - [Blockchains API Migration Path](https://docs.tatum.io/docs/blockchains-api-migration-path.md) - [Migration Observations](https://docs.tatum.io/docs/v3-to-v4-blockchains-api-migration-observations.md) - [DATA API - UTXO Indexer](https://docs.tatum.io/docs/data-api-utxo-indexer.md) - [Delete Your Tatum Account](https://docs.tatum.io/docs/delete-your-tatum-account.md) - [📁 Account Management & Login](https://docs.tatum.io/docs/account-management.md) - [Login Issues – Troubleshooting Steps](https://docs.tatum.io/docs/login-issues-troubleshooting-steps.md) - [Teams - Create and Invite Members](https://docs.tatum.io/docs/teams-create-and-invite-members.md) - [Transferring Account Ownership](https://docs.tatum.io/docs/transferring-account-ownership.md) - [Daily Charges on Tatum](https://docs.tatum.io/docs/daily-charges.md) - [Dedicated API Keys](https://docs.tatum.io/docs/dedicated-api-keys.md): Tatum offers **Dedicated API Keys** as a flexible, high-performance add-on for applications requiring guaranteed throughput. This guide explains how these keys are billed, how they interact with your base subscription, and how to manage your dedicated resources. - [Find Your Invoices in the Tatum Dashboard](https://docs.tatum.io/docs/find-invoice-history.md): Need to access your past invoices? You can find them in the Tatum Dashboard under your payment history. - [Monitoring Credit Consumption](https://docs.tatum.io/docs/high-credit-use-and-overcharges.md) - [💳 Billing](https://docs.tatum.io/docs/billing.md) - [Modify or Cancel Your Subscription](https://docs.tatum.io/docs/modify-or-cancel-a-paid-subscription.md) - [Failed or Declined Payments](https://docs.tatum.io/docs/payment-declined.md): This article will help you identify and resolve common issues with failed payments when using Stripe to pay for Tatum services. - [Settle Outstanding Invoices](https://docs.tatum.io/docs/payment-outstanding-settle-invoices.md) - [Billing Basics: How It Works](https://docs.tatum.io/docs/tatum-billing-basics-how-it-works.md): At Tatum, we aim to make billing straightforward and transparent. This article explains how our billing system works and what you can expect. - [Understanding "Pay as you go - Overage" (Legacy Plans)](https://docs.tatum.io/docs/understanding-pay-as-you-go-overage.md) - [Unrecognized Credit Card Charges from Tatum](https://docs.tatum.io/docs/unrecognized-credit-card-charges-from-tatum.md) - [Contacting Support](https://docs.tatum.io/docs/contacting-support.md) - [HTTP Error 429](https://docs.tatum.io/docs/error-429.md) - [🪲 Report Issues or Bugs to Support](https://docs.tatum.io/docs/reporting-issues-or-bugs-to-support.md) - [Report HTTP Errors - 40X, 50X, and Others](https://docs.tatum.io/docs/reporting-http-errors-40x-50x-and-others.md) - [Report Js SDK Errors](https://docs.tatum.io/docs/reporting-js-sdk-errors.md) - [Report KMS Errors](https://docs.tatum.io/docs/reporting-kms-errors.md) - [Report Notifications Issues](https://docs.tatum.io/docs/reporting-notifications-issues.md) - [Report RPC Nodes Errors](https://docs.tatum.io/docs/reporting-rpc-errors.md) - [Report Virtual Accounts Issues](https://docs.tatum.io/docs/reporting-virtual-accounts-errors.md) - [Cosmos - Fetching All Transactions from an Address](https://docs.tatum.io/docs/cosmos-fetching-all-transactions-from-an-address.md) - [Improving RPC Performance with Compression](https://docs.tatum.io/docs/improving-rpc-performance-with-compression.md): Adding an Accept-Encoding: gzip, br header to JSON-RPC requests can reduce transfer size and deliver up to a 70% speed improvement for responses over 100 KB - [TATUM API - Recommended Connection Timeout Settings](https://docs.tatum.io/docs/tatum-api-recommended-connection-timeout-settings.md) - [BTC - Maxfeerate Limit Error](https://docs.tatum.io/docs/btc-maxfeerate-limit-error.md) - [TRON - Estimate Fee and FeeLimit for TRX, TRC10 and TRC20](https://docs.tatum.io/docs/estimate-fee-and-feelimit-for-trx-trc10-and-trc20.md) - [EVM - Fee Estimate, GasPrice and Insufficient funds Error](https://docs.tatum.io/docs/fee-estimate-gasprice-and-insufficient-funds.md) - [Fee Estimate: Troubleshooting "fees.not.found"](https://docs.tatum.io/docs/fee-estimate-troubleshooting-feesnotfound.md) - [Refunding Gas Fees](https://docs.tatum.io/docs/refunding-gas-fees.md) - [KMS - Error 500 Internal Server Error](https://docs.tatum.io/docs/kms-error-500-internal-server-error.md) - [KMS - Malformed UTF-8 data error](https://docs.tatum.io/docs/kms-malformed-utf-8-data-error.md) - [KMS - "tron.tx.expired" Error](https://docs.tatum.io/docs/tron-error-trontxexpired.md) - [Get metadata of a fungible token](https://docs.tatum.io/docs/get-metadata-of-a-fungible-token.md) - [Harmony One - NFTs not loading](https://docs.tatum.io/docs/nft-harmony-one-and-nfts-not-loading.md) - [OpenSea - NFTs listing issues](https://docs.tatum.io/docs/nft-opensea-and-listing-issues.md) - [Transaction Pending](https://docs.tatum.io/docs/nft-polygon-matic-transaction-pending.md) - [Polygon Amoy - NFT Smart Contract](https://docs.tatum.io/docs/polygon-amoy-nft-smart-contract.md) - [Cancel or Replace a blockchain transaction](https://docs.tatum.io/docs/cancel-or-replace-a-blockchain-transaction.md) - [Blockchain Operations](https://docs.tatum.io/docs/troubleshooting-blockchain-operations.md) - [BNB - Beacon Chain Account Balance Attributes](https://docs.tatum.io/docs/bnb-beacon-chain-account-balance-attributes.md) - [BNB - BEP2 and BEP20 Token Transfers](https://docs.tatum.io/docs/bnb-bep2-and-bep20-token-transfers.md) - [BNB - Transactions over Beacon Chain and Smart Chain](https://docs.tatum.io/docs/bnb-transactions-over-beacon-chain-and-smart-chain.md) - [Error - "Fee cap less than block base fee"](https://docs.tatum.io/docs/error-fee-cap-less-than-block-base-fee.md) - [Error - "Contract Creation Code Storage Out of Gas"](https://docs.tatum.io/docs/evm-error-contract-creation-code-storage-out-of-gas.md) - [Multi tokens (ERC-1155) name and symbol](https://docs.tatum.io/docs/multi-tokens-erc-1155-name-and-symbol.md) - [Replacement Transaction Underpriced](https://docs.tatum.io/docs/replacement-transaction-underpriced.md): Error 403 - Unable to broadcast transaction - [Stellar - Broadcast Transaction Timeout](https://docs.tatum.io/docs/stellar-broadcast-transaction-timeout.md) - [Stellar: Error "xlm.account.not.found"](https://docs.tatum.io/docs/stellar-error-xlmaccountnotfound.md) - [Troubleshooting "Execution Reverted" Errors](https://docs.tatum.io/docs/troubleshooting-execution-reverted-errors.md) - [Using the Same Blockchain Address Across EVM Chains](https://docs.tatum.io/docs/using-the-same-blockchain-address-across-evm-chains.md) - [Solana - Dropped Transactions and Workarounds](https://docs.tatum.io/docs/solana-dropped-transactions-and-workarounds.md) - [Solana - Error processing Instruction 0](https://docs.tatum.io/docs/solana-error-processing-instruction-0.md) - [Solana - Error "Too many accounts requested, limit is 10,000,000"](https://docs.tatum.io/docs/solana-error-too-many-accounts-requested-limit-is-10000000.md) - [Solana - Error "failed to deserialize solana_sdk"](https://docs.tatum.io/docs/solana-errors-failed-to-deserialize-solana_sdk.md) - [Solana - Indexing and Confirmation](https://docs.tatum.io/docs/solana-indexing-and-confirmation.md) - [Solana - KMS_FAILED_TX with Successful Transactions](https://docs.tatum.io/docs/solana-kms_failed_tx-with-successful-transactions.md) - [Solana - Minimum Required Account Balance](https://docs.tatum.io/docs/solana-minimum-required-account-balance.md) - [Solana - Transaction has not been confirmed yet (Error 403)](https://docs.tatum.io/docs/solana-transaction-not-confirmed-yet.md) - [Troubleshooting Transaction Broadcasting Issues on EVM Chains Using Tatum APIs and KMS](https://docs.tatum.io/docs/troubleshooting-transaction-broadcasting-issues-on-evm-chains-using-tatum-apis-and-kms.md) - [TRON - Error: Cannot send TRC-20 callback is not defined](https://docs.tatum.io/docs/tron-error-cannot-send-trc-20-callback-is-not-defined.md) - [TRON - Freeze and Unfreeze TRX](https://docs.tatum.io/docs/tron-freeze-and-unfreeze-trx.md) - [TRON - Missing or Incorrect Timestamps in Transactions](https://docs.tatum.io/docs/tron-missing-timestamps-in-transactions.md) - [TRON - Transaction could not be found](https://docs.tatum.io/docs/tron-transaction-could-not-be-found.md) - [TRON - Troubleshooting Tapos check error](https://docs.tatum.io/docs/tron-troubleshooting-tapos-check-error.md) - [TRON - Unable to find account](https://docs.tatum.io/docs/tron-unable-to-find-account.md) - [BTC - CPFP and stuck transactions in the mempool](https://docs.tatum.io/docs/bitcoin-cpfp-and-stuck-transactions-in-the-mempool.md) - [BTC - RBF and stuck transactions in the mempool](https://docs.tatum.io/docs/bitcoin-replace-by-fee-and-stuck-transactions-in-the-mempool.md) - [BTC - About Mempool and Expiry Time](https://docs.tatum.io/docs/btc-mempool-and-expiry-time.md) - [BTC - Transaction Broadcast Error](https://docs.tatum.io/docs/btc-transaction-broadcast-error.md) - [Building a UTXO Transaction](https://docs.tatum.io/docs/building-a-utxo-transaction.md) - [Dust amount detected in one output](https://docs.tatum.io/docs/dust-amount-detected-in-one-output.md) - [BTC - Transaction already exists in mempool](https://docs.tatum.io/docs/transaction-already-exists-in-mempool.md) - [Transactions sharing the same Transaction Hash](https://docs.tatum.io/docs/transactions-with-the-same-transaction-hash.md) - [Troubleshooting the Error: "too-long-mempool-chain"](https://docs.tatum.io/docs/troubleshooting-the-error-too-long-mempool-chain.md) - [XRP - Account not found](https://docs.tatum.io/docs/xrp-account-not-found.md) - [Transaction Unconfirmed, Pending, Dropped or Failed](https://docs.tatum.io/docs/unconfirmed-and-dropped-transactions.md) - [Notifications - Tron Mainnet: contractAddress Returning a Symbol](https://docs.tatum.io/docs/about-contractaddress-value-and-symbol.md) - [Missing "counterAddress" - UTXO chains and Solana](https://docs.tatum.io/docs/counteraddress-on-utxo-chains-like-bitcoin-and-solana.md) - [Missing "x-payload-hash" in Notification Response Headers](https://docs.tatum.io/docs/missing-x-payload-hash-in-notification-response-headers.md) - [Delivery error: "networkError: true"](https://docs.tatum.io/docs/notification-delivery-error-networkerror-true.md) - [UTXO and ADDRESS_TRANSACTION](https://docs.tatum.io/docs/notifications-utxo-and-address_transaction.md) - [XRP, KMS and failed transactions](https://docs.tatum.io/docs/notifications-xrp-kms-and-failed-transactions.md) - [Arbitrum - Error: missing trie node](https://docs.tatum.io/docs/arbitrum-error-missing-trie-node.md) - [BASE - "eth_sendRawTransaction" Error 429 "Over Rate Limit"](https://docs.tatum.io/docs/base-eth_sendrawtransaction-error-429-over-rate-limit.md) - [Debug and Tracer error: reexec=128](https://docs.tatum.io/docs/debug-and-tracer-error-reexec128.md) - [Error "Already Known"](https://docs.tatum.io/docs/error-already-known-eth_sendrawtransaction.md) - [Error: "Max Fee Per Gas Less Than Block Base Fee"](https://docs.tatum.io/docs/error-max-fee-per-gas-less-than-block-base-fee.md) - [Error `eth_getProof` on Erigon v3: `hash sort failed`](https://docs.tatum.io/docs/eth_getproof-error-on-erigon-v3-hash-sort-failed.md) - [EVM - Unsupported methods](https://docs.tatum.io/docs/evm-based-nodes-unsupported-methods.md) - [EVM - rpc.txfeecap Node Configuration](https://docs.tatum.io/docs/evm-rpctxfeecap-node-configuration.md) - [EVM - trace_block and debug_traceBlockBy* Timeouts](https://docs.tatum.io/docs/evm-troubleshooting-debug_traceblockbyhash-timeouts.md) - [EVM - Troubleshooting "Reverted" with "trace_transaction"](https://docs.tatum.io/docs/evm-troubleshooting-reverted-with-trace_transaction.md) - [Retrieve Transaction Data via RPC Methods (EVM)](https://docs.tatum.io/docs/find-transaction-data-via-rpc-methods-evm.md): This article explains common transaction types, their characteristics, and which RPC methods are best suited for extracting relevant data. - [IOTA - SDK and Empty Body Errors](https://docs.tatum.io/docs/iota-sdk-and-empty-body-errors.md) - [Method not found: eth_newFilter](https://docs.tatum.io/docs/method-not-found-eth_newfilter.md) - [Optimism - debug_trace and Node Performance Issues](https://docs.tatum.io/docs/optimism-debug_trace-and-node-performance-issues.md) - [Optimism - tx hash 0x0000000000000000000000000000000000000000000000000000000000000000](https://docs.tatum.io/docs/optimism-tx-hash-0x0000000000000000000000000000000000000000000000000000000000000000.md) - [Optimism Update - Transition from Geth to Erigon](https://docs.tatum.io/docs/optimism-update-transition-from-geth-to-erigon.md) - [Polkadot - Getting Extrinsics from a Block](https://docs.tatum.io/docs/polkadot-getting-extrinsics-from-a-block.md) - [Removed "totalDifficulty" from Block Schema](https://docs.tatum.io/docs/removed-totaldifficulty-from-block-schema.md) - [Retrieve Internal Transactions from a Transaction Hash](https://docs.tatum.io/docs/retrieve-internal-transactions-from-a-transaction-hash.md) - [SUI – Unsafe Methods Not Supported](https://docs.tatum.io/docs/sui-unsafe-methods-not-supported.md) - [Error: tracing failed: insufficient funds for gas * price + value](https://docs.tatum.io/docs/tracing-failed-insufficient-funds-for-gas-price-value-error.md) - [zkSync – “pending” Blocks Return null](https://docs.tatum.io/docs/zksync-pending-blocks-return-null.md) - [Algorand - Get Account Transactions](https://docs.tatum.io/docs/algo-get-account-transactions.md) - [Cardano - Rosetta: block method and "other_transactions"](https://docs.tatum.io/docs/cardano-rosetta-block-method-and-other_transactions.md) - [Cardano - Rosetta: "Error: (intermediate value) is not iterable"](https://docs.tatum.io/docs/cardano-rosetta-error-intermediate-value-is-not-iterable.md) - [EOS - Chain API & Trace API URLs](https://docs.tatum.io/docs/eos-chain-and-trace-api.md) - [Polkadot Asset Hub: "/runtime/metadata" Error 500](https://docs.tatum.io/docs/polkadot-asset-hub-runtimemetadata-error-500.md) - [Polkadot: Migration guide to the v1 REST API](https://docs.tatum.io/docs/polkadot-rest-api-migration.md): The underlying Polkadot network infrastructure is transitioning from the legacy Node.js `substrate-api-sidecar` to the new Rust-based **Polkadot REST API**. This change follows the upstream deprecation of `substrate-api-sidecar` by Parity and its replacement with `polkadot-rest-api`. - [Solana - Error getProgramAccounts](https://docs.tatum.io/docs/solana-error-getprogramaccounts.md) - [Solana - getProgramAccounts Performance Considerations](https://docs.tatum.io/docs/solana-getprogramaccounts-performance-considerations.md) - [Solana - Long response times](https://docs.tatum.io/docs/solana-long-response-times.md) - [Sui - Migration Guide from JSON-RPC to gRPC](https://docs.tatum.io/docs/sui-migration-guide-from-json-rpc-to-grpc.md) - [TON - getTransaction and Pagination](https://docs.tatum.io/docs/ton-gettransaction-and-pagination.md) - [TON - Retrieve Full Transaction Data via Transaction Hash](https://docs.tatum.io/docs/ton-retrieve-full-transaction-data-via-transaction-hash.md) - [TON - Retrieve Token Transaction Information](https://docs.tatum.io/docs/ton-retrieve-token-transaction-information.md) - [TON - /v3/actions Does Not Return Jetton Transfers](https://docs.tatum.io/docs/ton-v3actions-does-not-return-jetton-transfers.md) - [TRON access via Ethereum JSON-RPC API](https://docs.tatum.io/docs/tron-eth-json-rpc-api.md) - [TRON Testnet (Shasta) – Performance Expectations](https://docs.tatum.io/docs/tron-testnet-shasta-performance-expectations.md) - [Troubleshooting RPC requests](https://docs.tatum.io/docs/rpc-troubleshooting-rpc-requests-and-tatum.md) - [Bitcoin – getrawmempool Behavior](https://docs.tatum.io/docs/bitcoin-getrawmempool-behavior.md) - [Dogecoin - Error 64: tx-size](https://docs.tatum.io/docs/dogecoin-error-64-tx-size.md) - [UTXO Chains - Unsupported Methods](https://docs.tatum.io/docs/utxo-based-nodes-unsupported-methods.md) - [VA - Deposit address blockchain balance not reflected](https://docs.tatum.io/docs/deposit-address-blockchain-balance-not-reflected.md) - [VA: Base Sepolia and Internal Transactions - Not Supported](https://docs.tatum.io/docs/va-base-sepolia-and-internal-transactions-not-supported.md) - [VA - XLM and XRP: Deposit not Detected](https://docs.tatum.io/docs/va-deposit-not-detected-with-bnb-xlm-or-xrp.md) - [VA - Error XPUB not compatible](https://docs.tatum.io/docs/va-error-xpub-not-compatible.md) - [VA - TRON withdrawal error: offchain.tron.tx.failed](https://docs.tatum.io/docs/tron-withdrawal-error-offchaintrontxfailed.md) - [VA - How to find Withdrawal Logs](https://docs.tatum.io/docs/va-how-to-find-withdrawal-logs.md) - [VA - Unable to prepare withdrawal](https://docs.tatum.io/docs/va-unable-to-prepare-withdrawal.md) - [VA - Withdrawal from a Gas Pump deposit address](https://docs.tatum.io/docs/va-withdrawals-from-a-gas-pump-deposit-address.md) - [VA - Withdrawal registered in ledger but failed in the blockchain](https://docs.tatum.io/docs/withdrawal-registered-but-failed-in-the-blockchain.md) - [Troubleshooting Virtual Account Withdrawals](https://docs.tatum.io/docs/withdrawals-to-blockchain-troubleshooting.md) ## API Reference - [Data API Overview](https://docs.tatum.io/reference/blockchain-data-api.md): Our Data API product empowers users to seamlessly access on-chain data through a comprehensive suite of APIs. By integrating these APIs, you can retrieve detailed information about tokens, NFTs, wallets, transactions, DeFi events, and more. - [Get native balance (batch)](https://docs.tatum.io/reference/getbalancebatchblockchainsapi.md):
10 credits per address (e.g. 3 addresses = 30 credits)
Get native balance for multiple addresses in one request. Supports up to 30 comma-separated addresses (up to 10 for Tron). UTXO chains (Bitcoin, Litecoin, Dogecoin) return additional aggregated fields per address.
- [Get native balance](https://docs.tatum.io/reference/getbalanceblockchainsapi.md):10 credits per API call
Get native balance for an address. UTXO chains return additional aggregated fields.
- [Get block by hash or height](https://docs.tatum.io/reference/getblockblockchainsapi.md):50 credits per API call
Get block details by hash or height for supported blockchains. Response shape differs by chain (EVM-style vs UTXO-style). Bitcoin Cash (bch-mainnet, bch-testnet) returns the raw node block format (see UtxoRawBlock).
- [Get block hash by block number](https://docs.tatum.io/reference/getblockhashblockchainsapi.md):10 credits per API call
Get the block hash for a given block height (block number) for supported blockchains. Use block number only (e.g. ledger index for Ripple, sequence for Stellar).
- [Get current block height](https://docs.tatum.io/reference/getcurrentblockblockchainsapi.md):10 credits per API call
Get the latest block height for supported blockchains. The response is a block number (height) for most chains.
- [Get internal transactions by address](https://docs.tatum.io/reference/getinternaltransactionsblockchainsapi.md):20 credits per API call
Get internal transactions by address for EVM chains (Ethereum, BSC, Polygon, Celo, Base, Arbitrum, Optimism, Bera, Unichain, Monad).
- [Get mempool transaction hashes](https://docs.tatum.io/reference/getmempoolblockchainsapi.md):20 credits per API call
Get mempool (unconfirmed) transaction hashes for a UTXO chain. Supported chains: Bitcoin, Litecoin, Dogecoin, BCH (mainnet and testnet). Response is an array of transaction hashes (strings).
- [Get transaction by hash](https://docs.tatum.io/reference/gettransactionblockchainsapi.md):10 credits per API call
Get a transaction by hash. Response shape differs by chain (EVM-style vs UTXO-style). Bitcoin Cash (bch-mainnet, bch-testnet) returns the raw node transaction format (see UtxoRawTransaction).
- [Get outgoing transaction count](https://docs.tatum.io/reference/gettransactioncountblockchainsapi.md):10 credits per API call
Get the count of outgoing transactions (including pending) for the given address.
- [Get transaction history (UTXO) batch](https://docs.tatum.io/reference/gettransactionhistoryutxosbatchblockchainsapi.md):20 credits per address (e.g. 5 addresses = 100 credits)
Get transaction history by address for multiple addresses in one request (UTXO chains: Bitcoin, Litecoin, Dogecoin, Cardano). Max 30 addresses. Optional txType filter (incoming/outgoing) for BTC/LTC/DOGE.
Cardano (ADA): Only addresses are used. Filter txType is not available for Cardano. Returns ADA format (see example).
20 credits per API call
Get transaction history by address for UTXO chains (Bitcoin, Litecoin, Dogecoin, Cardano) with pagination and optional block range and tx type filter.
Cardano (ADA): Only address, pageSize, and offset are supported. Filters blockFrom, blockTo, and txType are not available for Cardano.
10 credits per API call
Get information about a transaction output (UTXO) by transaction hash and output index. Supported for Bitcoin, Litecoin, Dogecoin, and Bitcoin Cash. Response is normalized: value in smallest unit (satoshis), address, script, hash, index, and height (block height; for mempool/unconfirmed UTXOs, height is -1). If the output is spent, the API returns 403.
20 credits per API call
Get block number by time on the following blockchains:
To get started, provide a chain name and specify one of the filters listed below (combination of the filters is not allowed):
If you pass a time or Unix timestamp that is in the future, the system will return the number for the latest block.
If you pass a time or Unix timestamp in the past (dating back to or earlier than the blockchain's genesis block), the system will return 0.
- [Get specified blocks](https://docs.tatum.io/reference/getdefiblocksv4.md):10 credits per API call
Get information about blocks (when they were added, block hashes and list of transaction hashes that were processed within them) on the following blockchains:
To get started, provide a chain and specify one of the filters listed below (combination of these filters is not allowed):
50 credits per API call
Get all events on given addresses and / or in the requested block range on the following blockchains:
To get started:
As noted above, aside from general info and hashed event data, the API also decodes them for you in case you filter by one of the following supported event types:
tokenTransfer: All transfers of fungible tokens (including stablecoins) and NFTs as per ERC-20 and ERC-721 standard.multitokenTransfer: All transfers of multitokens (both single transfers and batch transfers) as per ERC-1155 standard.stablecoinTransfer: Refers to the transfer of specific stablecoins on the mainnet. Typically, the top 10 to 16 stablecoins on each chain according to CoinMarketCap are included. If the contractAddresses parameter is also used in the filter combination, any tokens specified in it will also be included in the list.uniswapTrade: Provides all swap events that occur on both Uniswap V2 and V3. In some cases, it may not be possible to map the swapped amounts to specific tokens. As a result, certain decoded data such as token amounts might be missing or in the original big number format. This will be indicated by the response parameter partiallyRaw: true.10 credit per API call
Get information about latest added block on the following blockchains:
To get started, you can just provide a chain.
- [Get best swap rate](https://docs.tatum.io/reference/getv4datadefiswapsquote.md):20 credits per API call
Get the single best swap rate across all supported protocols. Compares all protocols and returns the one with the best price: sell orders — highest buyAmount, buy orders — lowest sellAmount. Use this when you just want the best deal without thinking about protocols. For comparing all options, use GET /swaps/quotes instead. **Quotes are cached for up to 15 seconds** (less than one Ethereum block). Each response includes an `expiresAt` field (Unix timestamp) indicating when the underlying quote was originally fetched from the protocol. Always check `expiresAt` against the current time before displaying or acting on a quote — if less than ~10 seconds remain, re-query to get a fresh price. - [Get multi-protocol rates](https://docs.tatum.io/reference/getv4datadefiswapsquotes.md):20 credits per API call
Compare swap rates across all supported protocols. Results are sorted by best price: highest buyAmount for sell orders, lowest sellAmount for buy orders. **Quotes are cached for up to 15 seconds** (less than one Ethereum block). Each result includes an `expiresAt` field (Unix timestamp) indicating when the underlying quote was originally fetched from the protocol. Always check `expiresAt` against the current time before displaying or acting on a quote — if less than ~10 seconds remain, re-query to get a fresh price. - [DeFi API](https://docs.tatum.io/reference/defi-api.md): Track DeFi events, swap quotes, protocol blocks, and historical data with a unified API. - [Get Exchange Rate by Symbol](https://docs.tatum.io/reference/getexchangerate.md):Credit cost: 20 credits when basePair is a fiat currency or USDT / USDC; 50 credits when basePair is any other crypto symbol.
Get the current exchange rate for exchanging fiat/crypto assets.
We support the top 1000+ token symbols by market cap.
Tokens are made available as soon as they’re published to CEXes or DEXes.
We pull from 10+ CEXes & 100+ DEXes.
By default, the base pair (the target asset) is EUR. When obtaining the exchange rate for an asset (for example, BTC), the value returned by the API expresses the amount of EUR that can be currently exchanged into 1 BTC.
Accepted base pairs depend on the plan:
USDT and USDC.20 credit per API call
Get the current exchange rate by chain & contract address.
By default, the base pair (the target asset) is EUR. When obtaining the exchange rate for an contract address for chain (for example, 0xdAC17F958D2ee523a2206206994597C13D831ec7 on ethereum-mainnet), the value returned by the API expresses the amount of EUR that can be currently exchanged into 1 0xdAC17F958D2ee523a2206206994597C13D831ec7 (USDT).
- [Get Exchange Rate by Symbol - Batch](https://docs.tatum.io/reference/getexchangerates.md):Credit cost (per pair): 20 credits when basePair is a fiat currency or USDT / USDC; 50 credits when basePair is any other crypto symbol. The total cost is the sum across all pairs in the batch.
Get the current exchange rates for exchanging fiat/crypto assets.
We support the top 1000+ token symbols by market cap.
Tokens are made available as soon as they’re published to CEXes or DEXes.
We pull from 10+ CEXes & 100+ DEXes.
When obtaining the exchange rate for an asset (for example, BTC), the value returned by the API expresses the amount of EUR that can be currently exchanged into 1 BTC.
Accepted base pairs depend on the plan:
USDT and USDC.20 credits per pair per API call
Get the current exchange rates by chain and contract address for multiple pairs in one request.
By default, the base pair (the target asset) is EUR. When obtaining the exchange rate for a contract address on a chain, the value returned expresses the amount of the base pair that can be currently exchanged into 1 unit of the token.
Limits: Maximum 25 pairs per request. Maximum 3 different chains per request. Duplicate (chain, contractAddress) pairs are allowed and return the same price for each occurrence.
When a token price is not available, the response item includes value and timestamp as null and an error object with message "Token not found". Successful and failed items are returned together in the same response.
- [Get Price Change by Symbol](https://docs.tatum.io/reference/getpricechange.md):200 credits per API call
Get price change data for a symbol over a specified time range or interval.
This endpoint calculates the price change (both absolute and percentage) for a given symbol between two points in time. You can either specify an explicit time range using timeFrom and timeTo, or use a predefined interval that computes the change from the last fully closed candle.
Supported symbols: We support 439+ trading pairs. The symbol parameter accepts the base currency (e.g., "BTC", "ETH").
Base pair: By default, the base pair is "USDT". You can specify a different quote asset (e.g., "ETH", "USDC") using the basePair parameter.
Time range options:
timeFrom and timeTo to calculate price change over a specific period. Both parameters must be in ISO 8601 date-time format.interval parameter (e.g., "1h", "1d", "1w", "1M") to calculate price change from the last fully closed candle of that interval. Supported intervals: 1m, 5m, 15m, 30m, 45m, 1h, 2h, 4h, 1d, 1w, 1M, 1y.Important: You must provide either (timeFrom + timeTo) OR interval, but not both.
200 credits per API call
Get price change data for multiple symbols in a single request. Each item may specify a time range (timeFrom + timeTo) or an interval. Maximum 10 items per request.
Request body must be an array of objects (or { "body": [ ... ] }). Each object must include symbol, batchId, and either (timeFrom + timeTo) or interval.
50 credits per API call
Get historical exchange rate in USD for a symbol at a specific point in time.
This endpoint retrieves the closest available price record for a given symbol and timestamp. The data includes OHLCV (Open, High, Low, Close, Volume). By default returns 1-minute candles; use the interval parameter to aggregate into 5m, 15m, 1h, 1d, etc.
Supported symbols: We support 439+ trading pairs. The symbol parameter accepts the base currency (e.g., "BTC", "ETH").
Time handling:
openTime ≤ time < closeTime), or the closest available record if no exact match is found.Time format: You can provide time either as a Unix timestamp in milliseconds (using the unix parameter) or as a Date object (using the time parameter). You must provide exactly one of these parameters.
Interval: Candle interval. Supported values: 1m, 5m, 15m, 30m, 45m, 1h, 2h, 4h, 1d, 1w, 1M. Defaults to 1m.
- [Get OHLCV by Symbol - Batch](https://docs.tatum.io/reference/getsymbolohlcvbatch.md):500 credits per API call
Get multiple historical OHLCV (Open, High, Low, Close, Volume) candles for a symbol starting from a given time.
Returns up to numberOfCandles (max 50) OHLCV candles with openTime ≥ the provided start time, ordered by openTime ascending. The optional interval query parameter sets the candle size (same values as GET /v4/data/rate/symbol/OHLCV); it defaults to 1m.
Supported symbols: We support 439+ trading pairs. The symbol parameter accepts the base currency (e.g., "BTC", "ETH").
Time format: Provide the start of the range either as a Unix timestamp in milliseconds (unixFrom) or as a Date in ISO 8601 format (timeFrom). You must provide exactly one of these parameters.
10 credits per API call
Estimate the current fee for different types of transactions.
This API is supported for the following blockchains:
10 credits per API call
Get an estimated gas price (wei) and the number of gas units needed for a transaction.
New endpoint which is unifying all supported chains for gas estimation into the one. List of supported chains is bellow.
10 credits per API call + 10 credits per each gas estimation
Get an estimated gas price and the number of gas units needed for multiple Ethereum transactions. The gas price is obtained from multiple sources and calculated based on the latest N blocks and the current mempool state.
The estimations are returned in the same order as the transactions were submitted in the request.
The fast gas price is used by default.
NOTE: The estimated gas price is returned in wei. However, when making a transaction itself and providing the custom fee, you have to provide the gas price in Gwei. Make sure to convert the estimated gas price from wei to Gwei before submitting your transaction.
- [Get recommended base fee for a chain](https://docs.tatum.io/reference/getblockchainfee.md):1 credit per API call
Get the recommended fee/gas price for a blockchain.
Fee is in satoshis(meaning currency(BTC, DOGE,... / 100 000 000) per byte
This API is supported for the following blockchains:
5 credits per API call
Get an estimated amount of gas needed for a VeChain transaction.
- [Estimate the fee for a XinFin transaction](https://docs.tatum.io/reference/xdcestimategas.md):2 credits per API call
Get an estimated gas price and the number of gas units needed for a XinFin transaction. The gas price is obtained from https://rpc.xinfin.network/gasPrice.
NOTE: The estimated gas price is returned in wei. However, when making the transaction itself and providing the custom fee, you have to provide the gas price in Gwei. Make sure to convert the estimated gas price from wei to Gwei before submitting your transaction.
- [Check malicous address](https://docs.tatum.io/reference/checkmalicousaddress.md):Check, if the blockchain address is malicous. Malicous address can contain assets from the DarkWeb, is connected to the scam projects or contains stolen funds.
We use malicious address data from standard on-chain analytics providers for this endpoint. The API response includes the sources used.
Supported Chains: ETH, BTC, LTC, SOLANA, TRON
- [Malicious address API](https://docs.tatum.io/reference/malicious-address.md): Detect malicious or fraudulent blockchain addresses with a unified API. - [Get chain trades from Cryptoslam](https://docs.tatum.io/reference/getcryptoslamchaintrades.md):100 credits per API call
Returns trades across the entire blockchain, with optional filtering by block range or timestamp range.
Supported blockchains:
5000 credits per API call
This endpoint retrieves trade data across the entire blockchain enriched with WalletDNA metrics. Developers can filter trades by size, side, or wallet behavior (IQ, Reputation, Flow, Mass, Epoch, Maker Presence). Responses include detailed trade, token, and wallet profiles, enabling advanced segmentation, smart-money tracking, and high-signal on-chain analytics in real time.
Supported blockchains:
30 credits per API call
Returns token transfers across the entire blockchain, with optional filtering by block range or timestamp range.
Supported blockchains:
100 credits per API call
Returns token transfers across the entire blockchain, enriched with WalletDNA analytics—including sender and receiver wallet tiers ("size"), labels, current balances (token & USD), and each address's share of supply. Each record includes FDV and live token pricing. Supports filtering by block range or timestamp. Longer response times should be expected due to the richness of the data.
Supported blockchains:
80 credits per API call
Returns trades for a specified liquidity pool, with optional filtering by side, trader, maker, block range, or timestamp range.
Supported blockchains:
4000 credits per API call
This endpoint retrieves trade data for a specified liquidity pool enriched with WalletDNA metrics. Developers can filter trades by size, side, or wallet behavior (IQ, Reputation, Flow, Mass, Epoch, Maker Presence). Responses include detailed trade, token, and wallet profiles, enabling advanced segmentation, smart-money tracking, and high-signal on-chain analytics in real time.
Supported blockchains:
1500 credits per API call
Returns reputation scores for one or more wallets holding a token, at the current or historical block/timestamp.
Rules:
Supported blockchains:
40 credits per API call
Returns current token prices with FDV, liquidity, and 24h price change, quoted in USD, ETH, or BTC.
Rules:
Supported blockchains:
50 credits per API call
Retrieves token price details including FDV, liquidity, and 24-hour change, quoted in any ERC20 or major blockchain token.
Rules:
Supported blockchains:
50 credits per API call
Returns token prices, FDV, liquidity and lookback percentage change quoted in any token at a historical block or timestamp.
Rules:
Supported blockchains:
45 credits per API call
Retrieves token prices, FDV, and liquidity at any block or timestamp, including percentage change for specified lookback periods.
Rules:
Supported blockchains:
80 credits per API call
Returns trades for a specified token address, with optional filtering by side, trader, maker, paired token, block range, or timestamp range.
Supported blockchains:
25 credits per API call
Returns token transfers for a specific token address, with optional filters by participant address, direction, block/timestamp range, and pagination.
Supported blockchains:
100 credits per API call
Returns token transfer records for a given token address, enriched with WalletDNA analytics—including sender and receiver wallet tiers ("size"), labels, current balances (token & USD), and each address's share of supply. Each record includes FDV and live token pricing. Supports filtering by participant address, direction, block range, or timestamp. Longer response times should be expected due to the richness of the data.
Supported blockchains:
80 credits per API call
Returns trades for a specified wallet address as the trader (default) or maker, with optional filtering by token, paired token, pair, side, block range, or timestamp range.
Supported blockchains:
4000 credits per API call
The Wallet Trades DNA endpoint returns all trades for a specific wallet, enriched with HolderDNA metrics calculated at the time of each swap. Supports DNA-based filters, allowing segmentation across different tokens. This lets you track how wallet intelligence, reputation, and other behavioral signals evolve per token throughout trading history.
Supported blockchains:
25 credits per API call
Returns token transfers for a specified wallet address, with optional filtering by token address, participant address, direction, block range, or timestamp range. You may filter by either tokenAddress or address, but not both.
Supported blockchains:
4000 credits per API call
Returns token transfer records for a given wallet address, enriched with WalletDNA analytics—including sender and receiver wallet tiers ("size"), labels, current balances (token & USD), and each address's share of supply. Each record includes FDV and live token pricing. Supports filtering by participant address, direction, block range, or timestamp. Longer response times should be expected due to the richness of the data.
Supported blockchains:
250 credits per API call per address
Returns trending tokens across the entire blockchain for a specified activity window and optional category. The size of the increase in active wallets over the activity window determines the token's trending rank.
Supported blockchains:
50 credits per API call
Get mining rewards (coinbase outputs) for a UTXO address. This endpoint returns all coinbase rewards received by the address when it successfully mined blocks.
Supported blockchains:
To get started:
pageSize (max 500) and offset parameters.100 credits per API call
Get total mining rewards (sum of all coinbase outputs) earned by a UTXO address till date.
Supported blockchains:
20 credits per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/collections. Users can refer to GET /v4/data/collections for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Get all NFTs (ERC-721 and ERC-1155) and multitokens (ERC-1155 only) of your favorite collections! Our API lets you search for all tokens on:
To get started:
excludeMetadata to true).tokenType.excludeMetadata and tokenType won't have any effect on filtering data.10 credits per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/metadata. Users can refer to GET /v4/data/metadata for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Get metadata of NFTs (ERC-721 and ERC-1155) or multitokens (ERC-1155 only) by IDs for a given token address! Our API lets you search for all tokens on:
To get started:
50 credits per API call
Get Multi Token balances of a wallet address. The Multi Tokens are returned grouped by the smart contracts they were minted on.
This API is supported for the following blockchains:
50 credits per API call
Get all NFTs that a blockchain address holds. The NFTs are returned grouped by the smart contracts they were minted on.
This API is supported for the following blockchains:
On Solana and Algorand, if a blockchain address holds fewer than 50 NFTs, the API also returns each NFT's metadata. If the metadata is not returned, you can obtain it using the API for getting NFT metadata.
- [NFT API](https://docs.tatum.io/reference/nft-api.md): Query NFT collections, get metadata, check ownership, and track balances across chains with one simple API. - [Get a prediction-market event by ID](https://docs.tatum.io/reference/getpredictioneventbyidv4.md):100 credits per API call
Retrieve a single prediction-market event by its platform-native identifier. Useful for hydrating event detail pages or following links from a listing.
Accepted id formats:
12345).KXELONMARS). Tickers are uppercase alphanumeric with optional - and _ separators.Other notes
404 when the event does not exist on either platform.400 when the id does not match either accepted format.markets is populated only when includeMarkets=true is passed; otherwise it is null.volumeUnit and totalLiquidity follow the same per-platform rules as the listing endpoint.100 credits per API call
List prediction-market events across supported platforms. An event is a top-level grouping of one or more markets that share a common question or outcome set (e.g. "2028 US Presidential Election"). Each event row includes a roll-up of nested market counts, total volume, and total liquidity, with an opt-in to embed the full list of nested markets via includeMarkets=true.
Supported platforms (filter via platform or omit for a cross-platform feed):
polymarketkalshiFiltering, sorting and pagination
status, category, tag and search filters are only honoured by Polymarket. To use any of them you must also pin platform=polymarket — calling them without that pin returns 400 so the response is honest about what was filtered.sort accepts volume_desc, liquidity_desc, endingSoon, newest. When omitted on a cross-platform feed, results are interleaved so neither platform dominates the first page.pagination.cursor; pass that value verbatim as ?cursor=… on the next call. Cursors are opaque, fingerprint-bound to the filter set, and expire when filters change — never construct or modify them by hand. The cursor field is omitted from pagination on the last page.Other notes
volumeUnit is usd on Polymarket events (dollar-denominated volume) and contracts on Kalshi events (number of contracts traded, not USD).totalLiquidity is null on Kalshi — quoted liquidity is not exposed at the event level on Kalshi; compute from per-market orderbook depth if you need it.status in the response is the verbatim upstream status string (richer than the status filter enum) — values can include paused, archived, settled, etc.markets is populated only when includeMarkets=true is passed; otherwise it is null. When populated, every nested market is returned (no internal cap).100 credits per API call
Retrieve a single prediction market by its platform-native identifier.
Accepted id formats:
0x + 64 hex characters).KXELONMARS-99). Tickers are uppercase alphanumeric with optional - and _ separators.Other notes
404 when the market does not exist on either platform.400 when the id does not match either accepted format.volumeUnit, liquidity and chain follow the same per-platform rules as the listing endpoint.100 credits per API call
Current orderbook snapshot for one side of a market. The orderbook is per-outcome — pass side=yes or side=no to choose which outcome's book you want. Returns top-of-book through to depth levels of bids and asks, with a computed quoted-liquidity figure within 1% and 5% of the midpoint.
Other notes
side is required.hash is a content fingerprint of the book snapshot useful for ETag-style change detection on poll. Populated on Polymarket; null on Kalshi (no equivalent upstream field).404 when the market does not exist on either platform.100 credits per API call
Top holders of a market grouped by outcome token. Each top-level row in the response is one outcome (e.g. YES, NO); under it sits the list of wallets currently holding that outcome, ordered by the chosen sortBy metric. Useful for "who's on each side of this bet" leaderboards on a market-detail page.
Platform support
400.Filtering, sorting and pagination
user narrows the response to a single wallet — useful for "does this user have a position in this market" checks.status filters holders by their position state: OPEN (size > 0.01), CLOSED (size ≤ 0.01), ALL (default).sortBy chooses the metric used to order holders inside each outcome group: TOKENS, CASH_PNL, REALIZED_PNL, TOTAL_PNL. Combine with sortDirection (ASC or DESC).limit and offset apply per outcome group — e.g. on a binary market with limit=50 the response carries up to 100 holders total (50 YES + 50 NO).200 credits per API call
Historical OHLC price candles for a market over a time window. Used to power chart views — every candle includes open / high / low / close prices plus the in-bucket trade volume.
Filtering
interval is required. Accepted values: 1m, 5m, 15m, 1h, 4h, 1d, 1w. Each interval has a maximum allowed range (e.g. 1m can be queried for ~1 day at a time, 1d for ~1 year). Requests exceeding the range cap return 400.start and end are required ISO-8601 timestamps. end must be after start.source selects the underlying data feed. Defaults to candlesticks (trade-based OHLC with real volume). Pass midpoint to switch to a midpoint-quote feed with broader range coverage at the cost of volume = 0 on every candle. source=midpoint is supported on Polymarket only — passing it against a Kalshi market returns 400.Other notes
partial: true indicates the requested range was truncated by an upstream availability limit. This only happens on Polymarket with source=candlesticks (the trade-based feed exposes a finite window of historical fills); Kalshi candles cover the full requested range, and source=midpoint on Polymarket also covers the full range.partial is true, availableFrom contains the earliest timestamp the response actually covers — data before that point is unavailable from the trade-based feed. To recover the missing range on Polymarket, repeat the call with source=midpoint; the response spans the full window at the cost of volume = 0 on every candle (the midpoint feed carries quotes, not fills).availableFrom is null when no trades exist in the entire requested range.interval=1h response has timestamps on the hour).100 credits per API call
Current price snapshot for a single market. Returns per-outcome quotes (best bid / best ask / sizes), the implied midpoint, spread, last trade price and rolling 24-hour volume. Useful for ticker-style dashboards and pre-trade previews.
Other notes
id formats as GET /markets/{id} (Polymarket condition id or Kalshi market ticker).volume24h is reported in the market's volumeUnit — usd on Polymarket, contracts on Kalshi.volume24h and volumeUnit are null when the upstream does not expose a 24-hour figure.midPrice and spread are null when either side of the book is empty.100 credits per API call
List prediction markets across supported platforms. A market is a single binary or multi-outcome question (e.g. "Will candidate X win?"); it belongs to a parent event when one is defined upstream. Each row carries pricing-friendly roll-ups (volume, liquidity), the current outcome set, and on-chain references on platforms where they exist.
Supported platforms (filter via platform or omit for a cross-platform feed):
polymarketkalshiFiltering, sorting and pagination
status, category, tag, search and minVolume filters are only honoured by Polymarket. To use any of them you must also pin platform=polymarket — calling them without that pin returns 400.eventId accepts either a Polymarket numeric event id or a Kalshi event ticker. When omitted, results span all events on the targeted platform(s).endingBefore is an ISO-8601 timestamp; markets closing on or after that timestamp are excluded.sort accepts volume_desc, liquidity_desc, endingSoon, newest. When omitted on a cross-platform feed, results are interleaved between the two platforms.pagination.cursor; pass it back verbatim as ?cursor=… on the next call. Cursors are opaque, fingerprint-bound, and expire when filters change — never construct or modify them by hand.Other notes
volumeUnit is usd on Polymarket (dollar-denominated notional) and contracts on Kalshi (contract count — not USD).liquidity is null on Kalshi — quoted liquidity is not exposed by the upstream markets feed; aggregate orderbook depth client-side if you need it.chain is populated for Polymarket markets (Polygon CTF) and null on Kalshi which has no on-chain footprint.status in the response is the verbatim upstream status string (richer than the ?status= filter enum) — values can include paused, archived, settled, etc.100 credits per API call
Recent trades feed for a single market. Each row is one fill — outcome side, buy/sell direction, price, size and notional value — with the taker wallet attribution when the upstream exposes it.
Filtering and pagination
after and before are ISO-8601 timestamps that define an inclusive time window. They are honoured by Kalshi natively. On Polymarket the upstream /trades feed has no time-window filter, so passing after or before against a Polymarket market returns 400 — set the platform via the path id rather than attempting cross-platform time queries.pagination.cursor; pass it back verbatim as ?cursor=… on the next call. Cursors are fingerprint-bound to the time-window filter set.Other notes
taker is the wallet that crossed the spread on this fill. Populated on Polymarket; null on Kalshi (the public trades feed does not expose per-trade wallet attribution there).txHash is the on-chain settlement transaction hash where one exists. Populated on Polymarket and null on Kalshi.side is the outcome side (yes / no); direction is the order side (buy / sell) — both are surfaced because they answer different questions.50 credits per API call
Unified search across events, tags and trader profiles. One query returns all three result types in a single response — pick the branches you care about with searchTags and searchProfiles. Designed for discovery surfaces (autocomplete, top-of-page search) where a single query needs to surface the most relevant entities of any kind.
Platform support
Filtering and pagination
q is the required search string — 2..128 characters. Single-character queries are rejected with 400 because they match an unhelpfully wide slice of the dataset.limitPerType caps the number of results returned per branch (events, tags, profiles) — defaults to 10.searchTags toggles the tags branch — defaults to true. searchProfiles toggles the profiles branch — defaults to false because most callers don't need it.eventsStatus narrows the events branch by a free-text status (e.g. active); eventsTag is a comma-separated list of tag slugs (up to 50 entries). keepClosedMarkets overrides the default behaviour of hiding closed markets from the events branch.sort is a free-text sort key forwarded to the upstream; ascending sets sort direction.?page=N+1. The response body carries data.pagination.hasMore and data.pagination.totalResults for paging decisions.Other notes
tags array means no tag matches were found, not that the search failed.events share the same shape as the /events listing endpoint, so the same client-side rendering can be reused.profiles rows include only proxyWallet, name and pseudonym — additional profile fields (image, bio) are not exposed here.200 credits per API call
Ranked leaderboard of top traders, scoped by category and time period. Each row carries the trader's wallet, display fields (username, X handle, profile image), verified-badge status, and the metrics used for ranking (volume and PnL within the requested window).
Platform support
Filtering, sorting and pagination
category selects the leaderboard slice — one of OVERALL, POLITICS, SPORTS, CRYPTO, CULTURE, MENTIONS, WEATHER, ECONOMICS, TECH, FINANCE. Defaults to OVERALL.timePeriod sets the lookback window — DAY, WEEK, MONTH, ALL. Defaults to DAY.orderBy chooses the ranking metric: PNL (realised + unrealised profit) or VOL (trading volume). Defaults to PNL.user filters the leaderboard to a single wallet — useful for "where does this trader rank" lookups. userName filters by trader display name (substring match).limit (1..50, default 25) and offset (0..1000, default 0). Higher offsets are not supported by the upstream leaderboard.Other notes
rank is the continuous 1-indexed position given the requested filters — rank = 1 is the leader for the chosen category and time period.proxyWallet is returned lowercased.vol and pnl are USD figures, scoped to the requested category and timePeriod.100 credits per API call
Full wallet event feed — covers every event type the upstream emits: TRADE, SPLIT, MERGE, REDEEM, REWARD, CONVERSION, MAKER_REBATE and REFERRAL_REWARD. Unlike /wallets/{address}/trades, this endpoint includes non-trade events and supports a native time-range filter — useful for activity logs, audit trails and tax exports.
Platform support
400.Filtering, sorting and pagination
market / eventId scope the response (mutually exclusive, up to 50 entries each).type is a comma-separated list of event types — up to 8 entries from the enum.side filters to BUY or SELL (relevant for trade-type rows; null on non-trade rows).start / end are unix-seconds (not milliseconds) — values that look like millisecond timestamps (~13 digits) are rejected with 400. end must be greater than or equal to start.sortBy accepts TIMESTAMP, TOKENS, CASH. Defaults to TIMESTAMP. Combine with sortDirection (defaults to DESC).limit (1..500, default 100) and offset (0..10000, default 0).Other notes
side is null on non-trade rows (e.g. REWARD, SPLIT, MERGE, REDEEM) — direction is undefined there.outcomeIndex can be null for rows that don't map to a position side. A sentinel value of 999 is occasionally emitted by the upstream for the same case.conditionId and asset can be null on rows that aren't market-scoped (e.g. some reward / referral rows).address is normalised to lowercase before being echoed in the response.100 credits per API call
Closed and resolved positions for a wallet — one row per settled position (winning or losing), with the realised PnL, lifetime cost basis, settlement price, and the parent market's question and outcome metadata. Useful for backtest-style P&L drill-downs and tax exports.
Platform support
400.Filtering, sorting and pagination
market scopes the response to a comma-separated list of condition ids (0x + 64 hex), up to 50 entries.eventId scopes the response to a comma-separated list of Polymarket numeric event ids, up to 50 entries. Mutually exclusive with market — passing both returns 400.title filters by a substring of the market question.sortBy accepts REALIZEDPNL, TITLE, PRICE, AVGPRICE, TIMESTAMP. Defaults to REALIZEDPNL. Combine with sortDirection (ASC / DESC, defaults to DESC).limit (1..50, default 10) and offset (0..100000, default 0).Other notes
address is normalised to lowercase before being echoed in the response (every row's proxyWallet).timestamp is unix-seconds (not milliseconds) — the settlement time of the position.curPrice is the resolution price (0 or 1 for binary markets); avgPrice is the volume-weighted entry price.50 credits per API call
Count of distinct markets a wallet has ever traded. Lifetime metric — useful as a quick activity signal alongside /wallets/{address}/value without paying the cost of pulling the full trade history.
Platform support
400.Other notes
traded is an integer count — the number of distinct markets, not the number of trades.user is the lowercased address.200 credits per API call
Aggregated portfolio summary for a single wallet. Returns position counts (open, redeemable, closed), unrealised and realised PnL, total cost basis, active notional, win rate and ROI — all computed over the requested period. Useful as the headline KPI block on a wallet detail page.
Platform support
400.Filtering
period selects the lookback window for closed-position aggregates: 24h, 7d, 30d or all. Defaults to all.activeNotional are always live (the period only affects closed-position roll-ups).Other notes
address is normalised to lowercase before being echoed back in the response.winRate is a percentage in [0, 100] (e.g. 42.5 = 42.5%). It is null when closedPositions is zero — the ratio is undefined, not zero.roi is realised ROI as a percentage (e.g. 23.45 = 23.45%). Computed from realised PnL over total cost basis of closed positions only — unrealised PnL is excluded. null when totalCostBasis is zero.redeemablePositions is the count of positions on a resolved market that the wallet has won but has not yet redeemed. Disjoint from both openPositions and closedPositions — tracked separately so the count of currently actionable positions is visible.100 credits per API call
Current open positions held by a wallet — one row per outcome token, with unrealised PnL, current value, lifetime cost basis, and the parent market's question, slug and outcome metadata. Useful for "what's in my portfolio right now" views and per-market drill-downs.
Platform support
400.Filtering, sorting and pagination
market scopes the response to a comma-separated list of condition ids (0x + 64 hex), up to 50 entries.eventId scopes the response to a comma-separated list of Polymarket numeric event ids, up to 50 entries. Mutually exclusive with market — passing both returns 400.sizeThreshold filters out positions smaller than the given size. Defaults to 1; pass 0 to include dust.redeemable=true returns positions on resolved markets that the wallet has won but has not yet redeemed. mergeable=true returns positions eligible for merging back to USDC. Both default to false.sortBy accepts CURRENT, INITIAL, TOKENS, CASHPNL, PERCENTPNL, TITLE, RESOLVING, PRICE, AVGPRICE. Defaults to TOKENS. Combine with sortDirection (ASC / DESC, defaults to DESC).title filters by a substring of the market question.limit (1..500, default 100) and offset (0..10000, default 0).Other notes
address is normalised to lowercase before being echoed in the response (every row's proxyWallet).negativeRisk indicates whether the parent market is part of Polymarket's negative-risk grouping (e.g. multi-candidate winner-take-all markets).100 credits per API call
Trade-only fills for a wallet — one row per trade, with the buy/sell side, outcome metadata, size, price, transaction hash, and the trader's profile fields (display name, profile image). Trade-only — does not include non-trade events like splits, merges, redemptions or rewards (use /wallets/{address}/activity for the full feed).
Platform support
400.Filtering and pagination
market / eventId scope the response (mutually exclusive, up to 50 entries each).side filters to BUY or SELL trades.takerOnly defaults to true — set to false to include maker-side fills.filterType and filterAmount set a minimum trade size threshold. filterType=CASH filters by USDC notional; filterType=TOKENS filters by outcome-token count. Both must be provided together — passing one without the other returns 400.limit (1..10000, default 100) and offset (0..10000, default 0). The upstream feed enforces a hard cap at offset = 3000; calls past that point return an empty page rather than an error.Other notes
address is normalised to lowercase before being echoed in the response (every row's proxyWallet).timestamp is unix-seconds (not milliseconds).side uses the trade-direction vocabulary (BUY / SELL) — distinct from the outcome-side vocabulary (yes / no) used by /markets/{id}/trades.50 credits per API call
Total USD notional of a wallet's currently open positions. A single-number endpoint — useful for sparkline-style summaries and headline KPIs without paying the cost of pulling the full positions list.
Platform support
400.Filtering
market scopes the total to a comma-separated list of condition ids (0x + 64 hex), up to 50 entries. Omit for the wallet-wide total.Other notes
value is rounded to 2 decimal places.user is the lowercased address.100 credits per API call
Get current staked assets grouped by validator for a wallet address.
Supported blockchains:
To get started:
validatorAddresses grouped by validator with arrays of stake accounts./staking/native/current-assets and contains validators.100 credits per API call
Get current staked assets for a wallet address. This endpoint returns information about all stake accounts/validators owned by the address, including their state, delegated amount, active amount, and associated validators.
Supported blockchains:
To get started:
stakeAddresses with stake account data.validators with validator index and validator pubkey.100 credits per API call
Get liquid staked assets for a wallet address. Returns all liquid staking token balances held by the address from top pools (Lido, Rocket Pool, Marinade, Jito, etc.).
Supported blockchains:
To get started:
50 credits per API call
Get the top liquid staking pools for a blockchain. Returns all supported liquid staking tokens (protocol, symbol, token address) that can be used with /staking/liquid/current-assets.
Supported blockchains:
To get started:
100 credits per stake address per API call
Get historical staking rewards for up to 50 stake accounts in a single request. Returns the same per-address shape as /staking/native/rewards, one entry per input address, in input order.
Supported blockchains:
To get started:
chain, an array of 1–50 unique stakeAddresses, and (optionally) shared filters.stakeAddress, totalAmount, rewards[]). Rewards inside each item are sorted by epoch descending.100 credits per API call
Get historical staking rewards for a stake account. Returns detailed reward information including epoch, block number, reward amount, and post-balance for each reward period.
Supported blockchains:
To get started:
epochFrom and epochTo parameters.blockFrom and blockTo parameters.timeFrom and timeTo parameters (ISO 8601 format).unixFrom and unixTo parameters.50 credits per API call
Get all available staking pools (validators) on Solana. This endpoint returns comprehensive information about all validators including their address, identity, commission, stake amounts, APY, and additional metadata such as name, website, and location.
Supported blockchains:
To get started:
100 credits per API call
Get staking-related transactions for a Solana stake account or Ethereum withdrawal address. Returns deposits, topups, withdrawals, and credential changes.
Response shape differs by chain: Solana returns stakeAddress and transactions with stakeAddress/validatorAddress; Ethereum returns withdrawalAddress and transactions with withdrawalAddress/validatorIndex/validatorPubkey.
Supported blockchains:
Ethereum-specific: For beacon-only events (withdrawals, credential_change), txHash is a synthetic reference ID, not an on-chain execution transaction hash. blockNumber for credential_change is the consensus slot. amount is in ETH. Results are limited to 100,000 transactions per request; use type, timeFrom/timeTo, or epochFrom/epochTo filters for addresses with more history.
To get started:
type parameter. Chain-specific: Solana supports create, stake, unstake, withdraw, split (not credential_change); Ethereum supports create, stake, withdraw, credential_change (not unstake, split). Using an unsupported type for a chain returns 400.epochFrom and epochTo parameters.blockFrom and blockTo parameters.timeFrom and timeTo parameters (ISO 8601 format).unixFrom and unixTo parameters.Soft cancel: 0 credits. Instant delete: billed via Walrus on-chain storage fees (same credit check as upload).
Cancel renewal for a certified Walrus storage upload. Two modes are available:
instant=false): marks the blob as noRenewal=true. The file remains on-chain until its current storage epoch expires (walrusEndEpoch), then decommissions naturally. No additional fee is incurred — the remaining prepaid epochs are simply not renewed.instant=true): queues an immediate on-chain delete transaction. Requires sufficient Walrus storage credits (same check as upload). The Walrus worker executes the delete tx and the on-chain delete fee is charged to your Walrus storage balance afterward. Can be applied even if soft cancel was already set — it upgrades to instant.Both modes are idempotent. The job must be in CERTIFIED status and not already decommissioned.
0 credits per API call
Get the current status of a Walrus storage upload job. Poll this endpoint after POST /v4/data/storage/upload to track progress through the lifecycle: PENDING → UPLOADING → CERTIFIED.
Once status is CERTIFIED, the response includes downloadUrlByQuiltId and downloadUrlByQuiltPatchId which can be used to retrieve the file from any Walrus aggregator node. The walrusStartEpoch and walrusEndEpoch fields indicate the active storage window (one epoch ≈ 2 weeks).
If status is FAILED, the errorMessage field contains the reason. Failed jobs are not retried automatically — submit a new upload request to try again.
0 credits per API call
List all upload jobs for the current API key, ordered by most recently created. Use limit and offset to paginate through results.
Billed via Walrus on-chain storage fees — no standard API credits consumed per call.
Upload a file to Walrus decentralized storage. Files are staged in GCS and then certified on-chain by the Walrus worker asynchronously. The response immediately returns a jobId and a pre-computed blobId; poll GET /v4/data/storage/upload/{jobId} to track certification progress.
Epochs and renewals: Walrus storage is divided into epochs (approximately 2 weeks each). Files are stored for the platform default of ~4 epochs (~8 weeks) and are automatically renewed by Tatum before each epoch window closes. Renewal fees (SUI/WAL on-chain costs × your plan rate) are charged to your Walrus storage balance. To stop automatic renewal, call DELETE /v4/data/storage/upload/{jobId}.
report (1).pdf) to avoid blob-id collisions on-chain.multipart/form-data field named file.50 credit per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/owners/address. Users can refer to GET /v4/data/owners/address for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Check if wallet address owns any specified token (ERC-20, ERC-721 or ERC-1155) on the following blockchains:
To get started:
true if provided wallet address owns them.false and status code is 200.tokenId.50 credits per API call
Retrieves token prices, FDV, and liquidity at any block or timestamp, including percentage change for specified lookback periods.
Supported blockchains:
400 credits per API call
Returns the newest tokens minted on the blockchain based on mint timestamp, filtered by an activity window and optional category.
Supported blockchains:
50 credits per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/owners. Users can refer to GET /v4/data/owners for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Get all addresses that own your favorite token (ERC-20, ERC-721 or ERC-1155)! Our API lets you search for all token owners on:
To get started:
tokenId. In case of multitoken, result is an array of addresses.150 credits per API call
Returns the most popular tokens across the entire blockchain for a specified date in time and optional category. Popularity is determined by the token's number of active wallets during the specified calendar date.
Supported blockchains:
150 credits per API call
Returns the most popular tokens across the entire blockchain for a specified activity window and optional category. Popularity is determined by the token's number of active wallets during the activity window.
Supported blockchains:
20 credit per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/tokens. Users can refer to GET /v4/data/tokens for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Get information about your favorite token! Our API lets you search for all tokens on:
To get started:
tokenId as a query parameter.'native' keyword in the tokenAddress parameter. It is supported only for the mainnet of the following chains: 5000 credits per API call
This endpoint retrieves trade data across the entire blockchain enriched with WalletDNA metrics. Developers can filter trades by size, side, or wallet behavior (IQ, Reputation, Flow, Mass, Epoch, Maker Presence). Responses include detailed trade, token, and wallet profiles, enabling advanced segmentation, smart-money tracking, and high-signal on-chain analytics in real time.
Supported blockchains:
250 credits per API call
Returns the top trending tokens on the specified blockchain, ranked by recent trading activity, volume, liquidity, and holder growth. Each entry includes price, market cap, liquidity, holder count, and per-timeframe (1h/4h/12h/24h) statistics for price change, volume, transactions, buyers, and sellers.
Supported blockchains:
20 credits per API call
Get transaction history on the following blockchains:
To get started:
transactionTypes and even transactionSubtype (incoming, outgoing, zero-transfer).addresses query parameter. Following query parameters won't have any effect on filtering data: transactionTypes, transactionSubtype, tokenId, blockTo.pageSize and offset query parameters. cursor query parameter, by filling in the value from prevPage or nextPage field in the response body.10 credits per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we deprecated the endpoint for GET /v3/data/transactions/hash. Users can refer to GET /v4/data/transactions/hash for the latest documentation, as both endpoints function the same.Get transactions by hash on the following blockchains:
To get started:
10000 credits per API call per address
> 📘 Note for Free Users > > 1000 credits per API call per address > > As a free user, your data is cached on a 1-day refresh cycle, and wallet queries run through tatumio.eth. This setup helps lower costs so you can easily try out the API. For real-time data, faster syncs, and the full capability of our platform, we recommend upgrading to a paid plan.Returns composite reputation scores along with per-token scores for all tokens held in each wallet.
Supported blockchains:
100 credits per address for each API call.
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for POST /v3/data/utxos/batch. Users can refer to POST /v4/data/utxos/batch for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Retrieve unspent UTXOs for each provided address, up to a specified total amount. If you want to prepare a transaction on UTXO-based chains like Bitcoin, you need to enter unspent UTXOs to be able to perform a transaction. By providing ```totalValue``` as a total, our API will return a list of UTXOs that will be enough to cover the transaction.
Our API lets you get the unpenst UTXOs for a specific address on:To get started:
100 credits per API call
> 📘 **Note for v3 API users:** > > As part of our documentation consolidation, we removed the dedicated page for GET /v3/data/utxos. Users can refer to GET /v4/data/utxos for the latest documentation, as both endpoints function the same—simply replace v4 with v3 in the API URL if using the v3 version.Get unspent UTXOs for a specific address up to a specific total amount. If you want to prepare a transaction on UTXO-based chains like Bitcoin, you need to enter unspent UTXOs to be able to perform a transaction. By providing ```totalValue``` as a total, our API will return a list of UTXOs that will be enough to cover the transaction.
Our API lets you get the unpenst UTXOs for a specific address on:To get started:
100 credits per API call
Get native balances for a specific wallet addresses by time on the following blockchains:
To get started, provide a chain name, comma-separated list of addresses and specify one of the filters listed below (combination of the filters is not allowed):
If you pass a block number that is in the future (beyond the current latest block), the system will return the balance for the latest block.
If you pass a time or Unix timestamp that is in the future, the system will also return the balance for the latest block.
If you pass a time or Unix timestamp in the past (dating back to or earlier than the blockchain's genesis block), the system will return the balance for the first block (genesis block).
- [Get wallet portfolio](https://docs.tatum.io/reference/getwalletportfoliov4.md):50 credits per API call
Get portfolio balances of native, fungible tokens (ERC-20) or NFTs (ERC-721 and ERC-1155) for a specific wallet address on the following blockchains:
To get started:
excludeMetadata to true).tokenTypes parameter to indicate which types of tokens to fetch balances for. Supported values include [native], [fungible] and [nft,multitoken].excludeMetadata.1500 credits per API call per address
Returns reputation scores for a wallet across one or more specific tokens.
Supported blockchains:
5000 credits per API call per address
Returns reputation scores for one or more wallets using on-chain behavioral analysis across their token portfolio.
Supported blockchains:
20 credits per API call
Resolve a human-readable blockchain domain name into its corresponding wallet address for supported blockchains:
To get started:
Disable HMAC hash ID on the fired webhooks from Tatum API.
- [Enable HMAC webhook digest](https://docs.tatum.io/reference/enablewebhookhmac.md): > This endpoint is compatible with our deprecated v3 Notifications product. To use it with v3, simply replace 'v4' with 'v3' in the request URL.Enable HMAC hash ID on the fired webhooks from Tatum API. In order to make sure that a webhook is sent by us, we have the possibility to sign it with the HMAC Sha512 Hex algorithm.
To verify that a webhook is sent by us
JSON.stringify(req.body)
require('crypto').createHmac('sha512', hmacSecret).update(JSON.stringify(req.body)).digest('base64').Count of webhooks that were found from /v4/subscription/webhook
- [List all executed webhooks](https://docs.tatum.io/reference/getallwebhooksv4.md): > This endpoint is compatible with our deprecated v3 Notifications product. To use it with v3, simply replace 'v4' with 'v3' in the request URL.List all webhooks.
- [Notifications](https://docs.tatum.io/reference/notifications-reference.md) - [Retry a failed webhook](https://docs.tatum.io/reference/retrywebhookv4.md):Retry a failed webhook by re-queueing it for delivery. Only webhooks in the failed state can be retried.
- [Supported Chains](https://docs.tatum.io/reference/notifications-supported-chains.md) - [Create an alert](https://docs.tatum.io/reference/createsubscription.md): > 📘 **Tip:** To create Notifications on the mainnet or testnet you can use your respective keys from the Dashboard.50 credits per sent Notification + 50 credits per day per alert
For Free plans, there is a monthly limit of sent webhooks, which is 1000.
If the webhook is sent unsuccessfully, it will be retried. The number of retries depends on the plan.
Create an alert as an HTTP web hook.
The following alert types are available:
The following table describes the availability of this notification type on different blockchains and the credit consumption:
| Chain | Testnet/Mainnet | Token assets support | Plan limitation |
|---|---|---|---|
| Solana | Yes/Yes | SOL, SPL and NFTs | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Polygon | Yes/Yes | MATIC, ERC20, ERC721, ERC1155 | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Bitcoin | Yes/Yes | BTC | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Litecoin | Yes/Yes | LTC | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Bitcoin Cash | Yes/Yes | BCH, only incoming transactions | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Dogecoin | Yes/Yes | DOGE, only incoming transactions | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Tron | Yes/Yes | Tron, TRC10/TRC20 | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Binance Smart Chain | Yes/Yes | BSC, BEP20, ERC721, ERC1155 | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
| Other chains | Yes/Yes | NATIVE, ERC20, ERC721, ERC1155 | Free plans - 10 addresses across all blockchains, Paid plans - unlimited addresses across all blockchains |
{ "address": "FykfMwA9WNShzPJbbb9DNXsfgDgS3XZzWiFgrVXfWoPJ", // the address on which the transaction occurs; for EVM-based chains, this is the sender's address "txId": "2rdy3YCZHSwvpWtuDom1d4Jjy5UU9STLxF3ffXau6GToReDkfw8wEgX541fvzvh6btVC5D8iNapcKTXfPsoDBk7A", // the transaction ID "blockNumber": 110827114, // the block number; does not appear if the transaction is in the mempool (for EVM-based blockchains) "asset": "3gUeeR3BfVhukYJMwtHownRtRkGcf1bvwiV8TbKMZBVz", // the asset of the transaction: for token assets, this is the token address; for native blochckain assets, this is the name of the asset (for example, SOL) "amount": "1", // the amount of the asset that was credited to (+) or debited from (-) the address; for EVM-based chains, when "counterAddress" is present, the amount is always positive "tokenId": "1", // (ERC-721 / ERC-1155 only) the ID of the transferred token "type": "token", // the type of the transaction; can be either "native" or "token" "mempool": true, // (EVM-based blockchains only) if appears and set to "true", the transaction is in the mempool; if set to "false" or does not appear at all, the transaction has been added to a block "counterAddress": undefined // an optional counter party address of the transaction; for EVM-based blockchains, this is the recipient's address // UTXO based chains return without this parameter, since UTXO is many-to-many by design. "addressesRiskRatio": [ // (optional, subject to change; for Solana mainnet only) risk levels assigned to the addresses with which the address communicated within the transaction; the addresses are assessed using the AML/CFT solution by blockmate.io, see https://docs.blockmate.io/docs/risk-API/sources {"vTEfAhXTmvgFmepgfhzBbRrJ4EtUP9adbMJjpzLsDMk": 0}, {"zBbRrJ4EtUP9adbMJjpzLsDMkvTEfAhXTmvgFmepgfh": 100} ] }{ "events": [ { "timestamp": 1661961758000, "from": "0x0000000000000000000000000000000000000000", "to": "0xfa4e7035b34294407e5df1603215983d65e5a773", "tokenId": "14671", "txId": "0x916fcf878656f7a3772317697e6d2740ac8b1b7dbe6d029aa79592fd72f3fb0b", "contractAddress": "0x55a2430e32dcebc3649120f26f917d1f0686f74c", "type": "erc721", "amount": "1", "logIndex": 578, "metadataURI": "https://graphigo.prd.galaxy.eco/metadata/0x55a2430e32dcebc3649120f26f917d1f0686f74c/14671.json" } ], "blockNumber": 32522207, "chain": "polygon-mainnet", "subscriptionType": "CONTRACT_NFT_TXS_PER_BLOCK" }{ "events": [ { "timestamp": 1661961758000, "from": "0x85bd970cf0e49acd572f9c2d608713bc55b5ee0e", "to": "0x9ab31230d5413e4af01af9bb697651a3c70c95c9", "tokenId": "1450000023306", "txId": "0x565b9ca6b7b5ff1b1ce0725acd785dbf5ff0930d5ff547bad044c0960291555f", "contractAddress": "0xdb6290f355a528a7284bdd528b05a78fb05226ca", "type": "erc1155", "amount": "1", "logIndex": 571, "metadataURI": "https://touhao.bj.bcebos.com/nft/metadata/1450000023306.json" } ], "blockNumber": 32522207, "chain": "polygon-mainnet", "subscriptionType": "CONTRACT_MULTITOKEN_TXS_PER_BLOCK" }{ "events": [ { "txId": "0xc98307f09ed527d5cff8305e8f65226b790e3317ded10b9e58f6f07286dcf8f1", "logIndex": 326, "timestamp": 1661774265000, "address": "0xc2132d05d31c914a87c6611c10748aeb04b58e8f", "topic_0": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", "topic_1": "0x000000000000000000000000a91ab7d77892a559d2a95baaf1d748fc97c65d29", "topic_2": "0x0000000000000000000000009b08288c3be4f62bbf8d1c20ac9c5e6f9467d8b7", "topic_3": null, "data": "0x0000000000000000000000000000000000000000000000000000000002c9e3e4" } ], "blockNumber": 32447538, "chain": "polygon-amoy", "subscriptionType": "CONTRACT_LOG_EVENT" }{ "date": 1619176527481, "amount": "0.005", "currency": "BTC", "subscriptionType":"ACCOUNT_INCOMING_BLOCKCHAIN_TRANSACTION", "accountId": "6082ab462936b4478117c6a0", "reference: "c9875708-4ba3-41c9-a4cd-271048b41b9a", // the reference of the transaction in the virtual account "txId": "45af182a0ffab58e5ba32fee57b297b2260c6e23a1de5ddc76c7ee22d72dea99", "blockHash": "45af182a0ffab58e5ba32fee57b297b2260c6e23a1de5ddc76c7ee22d72dea99", // the hash of the block, might not be present every time "blockHeight": 12345, "from": "SENDER_ADDRESS", // might not be present every time; not present for UTXO-based blockchains "to": "RECIPIENT_ADDRESS_CONNECTED_TO_LEDGER_ACCOUNT", // the blockchain address of the recipient "index": 5 // for UTXO-based blockchains (BCH, BTC, DOGE, LTC), this is the index of the output in the transaction }{ "date": 1619176527481, "amount": "0.005", "currency": "BTC", "accountId": "6082ab462936b4478117c6a0", "reference: "c9875708-4ba3-41c9-a4cd-271048b41b9a", // the reference of the transaction in the virtual account "txId": "45af182a0ffab58e5ba32fee57b297b2260c6e23a1de5ddc76c7ee22d72dea99", "blockHash": "45af182a0ffab58e5ba32fee57b297b2260c6e23a1de5ddc76c7ee22d72dea99", // the hash of the block, might not be present every time; if set to "null", the transaction is in the mempool (for EVM-based blockchains) "blockHeight": 12345, // if set to "null", the transaction is in the mempool (for EVM-based blockchains) "from": "SENDER_ADDRESS", // might not be present every time; not present for UTXO-based blockchains (BCH, BTC, DOGE, LTC) "to": "RECIPIENT_ADDRESS_CONNECTED_TO_LEDGER_ACCOUNT", // the blockchain address of the recipient "index": 5 // for UTXO-based blockchains (BCH, BTC, DOGE, LTC), this is the index of the output in the transaction }{ "created": 1619176527481, "amount": "0.005", "price": "0.02", "type": "SELL", "pair": "VC_CHF/VC_CHF3", "id": "6082ab462936b4478117c6a0", // id of the trade "currency1AccountId": "6082ab462936b4478117c6a0", "currency2AccountId": "6082ab512936b4478117c6a2", "fee": null, "feeAccountId": null, "isMaker": true, "expiredWithoutMatch": false }{ "created": 1619176527481, "amount": "0.005", "orderAmount": "0.1", "price": "0.02", "type": "SELL", "pair": "VC_CHF/VC_CHF3", "id": "6082ab462936b4478117c6a0", // id of the trade "currency1AccountId": "6082ab462936b4478117c6a0", "currency2AccountId": "6082ab512936b4478117c6a2", "fee": null, "feeAccountId": null, "isMaker": true, "expiredWithoutMatch": false } { "txId": "0x026f4f05b972c09279111da13dfd20d8df04eff436d7f604cd97b9ffaa690567", "reference": "90270634-5b07-4fad-b17b-f82899953533", "accountId": "6086ed0744c45b24d4fbd039", "currency": "BSC", "withdrawalId": "608fe5b73a893234ba379ab2", "address": "0x8ce4e40889a13971681391AAd29E88eFAF91f784", "amount": "0.1", "blockHeight": 8517664 }{ "signatureId": "6082ab462936b4478117c6a0", "error": "Error message from the KMS" }{ "signatureId": "6082ab462936b4478117c6a0", "txId": "0x7bb7d3b90567e89f999f2e3d263bc3738a018dbbcfa9f5397678cf17cdf0235f" }50 credits per sent Notification + 50 credits per day per alert
Create and manage blockchain event notification alerts. This endpoint allows you to receive real-time webhook alerts for address activity, token transfers, and native currency transactions across supported blockchains.
Tip: Notifications are formatted using Templates. We recommend using the enriched template because it provides clean, human-readable enhanced data with token metadata. Learn more: 👉 Learn more
Supported Notification Types:
For more alert types & chain support, see: 👉 Alerts Overview
Restrictions
Each alert must be unique within your API key based on the following fields. If a matching alert already exists, creation will be rejected:
type + chain + address + urltype + chain + contractAddress + event + urltype + chain + urlTo monitor the same address with different configurations (e.g. different conditions or finality), use a different webhook URL for each alert.
Webhook Response Format
Recommended Default: templateId = "enriched"
If you do not specify a custom template, the response will use the legacy format. However, the enriched template is recommended because it provides structured, human-readable fields and token metadata.
To learn about legacy format, custom templates, or enriched_with_raw_data, visit: 👉 Learn more
Example: Enriched Template Webhook Payload
{ "data": { "kind": "transfer", "blockHash": "0x1234567890abcdef...", "blockNumber": 18500000, "blockTimestamp": 1699123456, "txId": "0xabcdef1234567890...", "currency": "ETH", "txTimestamp": 1699123456, "from": "0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6", "to": "0x8ba1f109551bD432803012645Hac136c", "value": "1000000000000000000", "contractAddress": "0xA0b86a33E6441b8c4C8C0C8C0C8C0C8C0C8C0C8C0C", "tokenId": "12345", "additionalData": { "gasUsed": "21000", "gasPrice": "20000000000" }, "tokenMetadata": { "type": "nft", "decimals": 0, "symbol": "NFT", "name": "My NFT", "uri": "https://api.example.com/metadata/12345" }, "subscriptionId": "64f1a2b3c4d5e6f7g8h9i0j1", "subscriptionType": "ADDRESS_EVENT" }, "location": "...", "scheme": "..." }
- [Cancel existing alert](https://docs.tatum.io/reference/deletesubscription.md): > This endpoint is compatible with our deprecated v3 Notifications product. To use it with v3, simply replace 'v4' with 'v3' in the request URL. Cancel existing alert.
- [Count of alerts](https://docs.tatum.io/reference/getsubscriptionscount.md): > This endpoint is compatible with our deprecated v3 Notifications product. To use it with v3, simply replace 'v4' with 'v3' in the request URL.Count of alerts that were found from /v4/subscription
- [List all active alerts](https://docs.tatum.io/reference/getsubscriptionsv4.md):List all active alerts.
- [Get alert by ID](https://docs.tatum.io/reference/getsubscriptionv4.md):Get alert by ID.
- [Update alert](https://docs.tatum.io/reference/updatesubscription.md): > This endpoint is compatible with our deprecated v3 Notifications product. To use it with v3, simply replace 'v4' with 'v3' in the request URL.Update alert.
- [Update alerts by chain](https://docs.tatum.io/reference/updatesubscriptionsbychain.md):Update all alerts for specified chain.
- [Create a notification template (V4)](https://docs.tatum.io/reference/createnotificationtemplate.md):Create a custom notification template. Afterwards you can use its id as templateId when creating or updating alerts (only available on TRON and EVM for now).
Delete existing notification template and remove it from all alerts using it. If the template is used as the default for the account, the system default (enriched) will be set instead.
Get the default notification template for the current API key. This template is used for alerts that do not have an explicit templateId set.
List all custom templates.
- [Templates](https://docs.tatum.io/reference/templates-refrence.md) - [Update the default notification template](https://docs.tatum.io/reference/updatedefaultnotificationtemplate.md):Update the default notification template for the current API key. Accepts enriched, enriched_with_raw_data, or a custom template ID. Custom template must exist. Deprecated legacy is also accepted.
Update notification template.
- [❓How to connect to RPC?](https://docs.tatum.io/reference/how-to-connect-rpc-gateway.md): Learn how to connect to Tatum RPC Gateway with intelligent balancing, Smart Gateway features, and discover available methods and AI context endpoints. - [Abstract](https://docs.tatum.io/reference/rpc-abstract.md): Explore the Abstract blockchain—a fast, low-cost Layer 2 rollup on Ethereum—via public RPC endpoints. Reference the developer-friendly API guide to effortlessly query chain data, dispatch transactions, and inspect network status. Access quick start resources for building consumer-grade dApps, especially around culture, communities, SocialFi, and NFTs. Benefit from EVM compatibility and ZK-rollup security, bringing familiar tooling under a scalable infrastructure. - [Access Algorand Algod GET node endpoints](https://docs.tatum.io/reference/algonodegetdriver.md):1 credit per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based url to connect directly to the Algorand node provided by Tatum. You can check al available APIs here - https://developer.algorand.org/docs/rest-apis/algod/v2/.
Example call for Get Block is described in the response. https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2blocksround.
URL used for this call would be
https://api.tatum.io/v3/algorand/node/algod/YOUR_API_KEY/v2/blocks/16775567- [Access Algorand Indexer GET node endpoints](https://docs.tatum.io/reference/algonodeindexergetdriver.md):
1 credit per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based url to connect directly to the Algorand node provided by Tatum. You can check all available APIs here - https://developer.algorand.org/docs/rest-apis/indexer/.
Example call for Get Tx By ID is described in the response. https://developer.algorand.org/docs/rest-apis/indexer/#get-v2transactionstxid.
URL used for this call would be
https://api.tatum.io/v3/algorand/node/indexer/YOUR_API_KEY/v2/transactions/HNIQ76UTJYPOLZP5FWODYABBJPYPGJNEM2QEJSMDMQRWEKHEYJHQ- [Access Algorand Algod POST node endpoints](https://docs.tatum.io/reference/algonodepostdriver.md):
2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based url to connect directly to the Algorand node provided by Tatum. You can check al available APIs here - https://developer.algorand.org/docs/rest-apis/algod/v2/.
Example call for Broadcast a raw transaction is described in the response. https://developer.algorand.org/docs/rest-apis/algod/v2/#post-v2transactions.
URL used for this call would be
https://api.tatum.io/v3/algorand/node/algod/YOUR_API_KEY/v2/transactions- [Enable receiving asset on account](https://docs.tatum.io/reference/algorandblockchainreceiveasset.md):
Enable accepting Algorand asset on the sender account.
This operation needs the private key of the blockchain address. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
2 credits per API call
Send Algos from one Algorand address to the other one.
Signing a transaction
When sending Algos, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Algorand transaction](https://docs.tatum.io/reference/algorandbroadcast.md):Broadcast signed transaction to Algorand blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Algorand account address from private key](https://docs.tatum.io/reference/algorandgenerateaddress.md):Generate Algorand account deposit address from private key.
- [Generate Algorand wallet](https://docs.tatum.io/reference/algorandgeneratewallet.md):Tatum supports Algorand wallets.
- [Get Algorand Account balance](https://docs.tatum.io/reference/algorandgetbalance.md):Get Algorand account balance in ALGO.
- [Get Algorand block by block round number](https://docs.tatum.io/reference/algorandgetblock.md):⚠️ Deprecated: Get Algorand Block
GET /v3/algorand/block/{roundNumber}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Get Algorand block by block round number.
- [Get current block number](https://docs.tatum.io/reference/algorandgetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/algorand/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block number for any supported blockchain.
Get Algorand current block number. This is the number of the latest block in the blockchain.
- [Get Algorand Transactions between from and to](https://docs.tatum.io/reference/algorandgetpaytransactionsbyfromto.md):1 credit per API call
This endpoint is deprecated.
Get Algorand transaction by specified period of time.
- [Get Algorand Transaction](https://docs.tatum.io/reference/algorandgettransaction.md):⚠️ Deprecated: Get Algorand Transaction
GET /v3/algorand/transaction/{txid}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
Get Algorand transaction by transaction id.
- [Algorand](https://docs.tatum.io/reference/rpc-algorand.md): Explore Algorand blockchain, offering fast transactions via RPC gateway. Access detailed documentation for building scalable dApps and DeFi applications. - [broadcastTransaction](https://docs.tatum.io/reference/rpc-algorand-broadcasttransaction.md): Algorand RPC - [getAccount](https://docs.tatum.io/reference/rpc-algorand-getaccount.md): Algorand RPC - [getAccountApplicationInfo](https://docs.tatum.io/reference/rpc-algorand-getaccountapplicationinfo.md): Algorand RPC - [getAccountApplications](https://docs.tatum.io/reference/rpc-algorand-getaccountapplications.md): Algorand RPC - [getAccountApssLocalState](https://docs.tatum.io/reference/rpc-algorand-getaccountapsslocalstate.md): Algorand RPC - [getAccountAssetInfo](https://docs.tatum.io/reference/rpc-algorand-getaccountassetinfo.md): Algorand RPC - [getAccountAssets](https://docs.tatum.io/reference/rpc-algorand-getaccountassets.md): Algorand RPC - [getAccountCreatedAssets](https://docs.tatum.io/reference/rpc-algorand-getaccountcreatedassets.md): Algorand RPC - [getAccountInfo](https://docs.tatum.io/reference/rpc-algorand-getaccountinfo.md): Algorand RPC - [getAccounts](https://docs.tatum.io/reference/rpc-algorand-getaccounts.md): Algorand RPC - [getAccountTransactions](https://docs.tatum.io/reference/rpc-algorand-getaccounttransactions.md): Algorand RPC - [getApplication](https://docs.tatum.io/reference/rpc-algorand-getapplication.md): Algorand RPC - [getApplicationBox](https://docs.tatum.io/reference/rpc-algorand-getapplicationbox.md): Algorand RPC - [getApplicationBoxes](https://docs.tatum.io/reference/rpc-algorand-getapplicationboxes.md): Algorand RPC - [getApplicationDetails](https://docs.tatum.io/reference/rpc-algorand-getapplicationdetails.md): Algorand RPC - [getApplicationLogs](https://docs.tatum.io/reference/rpc-algorand-getapplicationlogs.md): Algorand RPC - [getApplications](https://docs.tatum.io/reference/rpc-algorand-getapplications.md): Algorand RPC - [getAsset](https://docs.tatum.io/reference/rpc-algorand-getasset.md): Algorand RPC - [getAssetBalances](https://docs.tatum.io/reference/rpc-algorand-getassetbalances.md): Algorand RPC - [getAssetInformation](https://docs.tatum.io/reference/rpc-algorand-getassetinformation.md): Algorand RPC - [getAssets](https://docs.tatum.io/reference/rpc-algorand-getassets.md): Algorand RPC - [getAssetTransactions](https://docs.tatum.io/reference/rpc-algorand-getassettransactions.md): Algorand RPC - [getBlock](https://docs.tatum.io/reference/rpc-algorand-getblock.md): Algorand RPC - [getBlockHash](https://docs.tatum.io/reference/rpc-algorand-getblockhash.md): Algorand RPC - [getGenesis](https://docs.tatum.io/reference/rpc-algorand-getgenesis.md): Algorand RPC - [getHealth](https://docs.tatum.io/reference/rpc-algorand-gethealth.md): Algorand RPC - [getLedgerStateDelta](https://docs.tatum.io/reference/rpc-algorand-getledgerstatedelta.md): Algorand RPC - [getLedgerSupply](https://docs.tatum.io/reference/rpc-algorand-getledgersupply.md): Algorand RPC - [getNodeStatus](https://docs.tatum.io/reference/rpc-algorand-getnodestatus.md): Algorand RPC - [getNodeStatusAfterRound](https://docs.tatum.io/reference/rpc-algorand-getnodestatusafterround.md): Algorand RPC - [getPendingTransactions](https://docs.tatum.io/reference/rpc-algorand-getpendingtransactions.md): Algorand RPC - [getTransaction](https://docs.tatum.io/reference/rpc-algorand-gettransaction.md): Algorand RPC - [getTransactionParams](https://docs.tatum.io/reference/rpc-algorand-gettransactionparams.md): Algorand RPC - [getTransactionProof](https://docs.tatum.io/reference/rpc-algorand-gettransactionproof.md): Algorand RPC - [getTransactions](https://docs.tatum.io/reference/rpc-algorand-gettransactions.md): Algorand RPC - [isHealthy](https://docs.tatum.io/reference/rpc-algorand-ishealthy.md): Algorand RPC - [isReady](https://docs.tatum.io/reference/rpc-algorand-isready.md): Algorand RPC - [simulateTransaction](https://docs.tatum.io/reference/rpc-algorand-simulatetransaction.md): Algorand RPC - [Arbitrum Nova](https://docs.tatum.io/reference/rpc-arbitrum-nova.md): Unlock high-speed, low-cost transactions with Arbitrum Nova blockchain and RPC gateway. Ideal for gaming and social dApps. - [Send ETH_ARB or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/arbblockchaintransfer.md):2 credits per API call
Send ETH_ARB or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending ETH_ARB, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Arb transaction](https://docs.tatum.io/reference/arbbroadcast.md):2 credits per API call
Broadcast signed transaction to Arb blockchain.
- [Generate Arb account address from Extended public key](https://docs.tatum.io/reference/arbgenerateaddress.md):Generates an Arb account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Arb private key](https://docs.tatum.io/reference/arbgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Arb wallet](https://docs.tatum.io/reference/arbgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Arb wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Arb wallet.
- [Get the ARB balance of an Arb account](https://docs.tatum.io/reference/arbgetbalance.md):⚠️ Deprecated: Get Arb Balance
GET /v3/arb/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of ARB of an Arb account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Arb block by hash](https://docs.tatum.io/reference/arbgetblock.md):⚠️ Deprecated: Get Arb Block
GET /v3/arb/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Arb block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/arbgetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/arb/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Arb block number. This is the number of the latest block in the blockchain.
- [Get Arb Transaction](https://docs.tatum.io/reference/arbgettransaction.md):⚠️ Deprecated: Get Arb Transaction
GET /v3/arb/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Arb transaction by transaction hash.
- [Get count of outgoing Arb transactions](https://docs.tatum.io/reference/arbgettransactioncount.md):⚠️ Deprecated: Get Arb Transaction Count
GET /v3/arb/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Arb transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/arbweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Arb node provided by Tatum. To learn more about Arb Web3, visit the Arb developers' guide.
- [Arbitrum One](https://docs.tatum.io/reference/rpc-arbitrum.md): Discover Arbitrum One, a Layer 2 scaling solution for Ethereum. Build faster, low-cost decentralized applications using the RPC gateway. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-arbitrum-debug_getbadblocks.md): Arbitrum RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-arbitrum-debug_storagerangeat.md): Arbitrum RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-arbitrum-debug_traceblockbyhash.md): Arbitrum RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-arbitrum-debug_traceblockbynumber.md): Arbitrum RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-arbitrum-debug_tracecall.md): Arbitrum RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-arbitrum-debug_tracetransaction.md): Arbitrum RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-arbitrum-eth_blocknumber.md): Arbitrum RPC - [eth_call](https://docs.tatum.io/reference/rpc-arbitrum-eth_call.md): Arbitrum RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-arbitrum-eth_chainid.md): Arbitrum RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-arbitrum-eth_estimategas.md): Arbitrum RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-arbitrum-eth_feehistory.md): ArbitrumOne RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-arbitrum-eth_gasprice.md): Arbitrum RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-arbitrum-eth_getbalance.md): Arbitrum RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-arbitrum-eth_getblockbyhash.md): Arbitrum RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-arbitrum-eth_getblockbynumber.md): Arbitrum RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-arbitrum-eth_getblocktransactioncountbyhash.md): Arbitrum RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-arbitrum-eth_getblocktransactioncountbynumber.md): Arbitrum RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-arbitrum-eth_getcode.md): Arbitrum RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-arbitrum-eth_getlogs.md): Arbitrum RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-arbitrum-eth_getproof.md): Arbitrum RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-arbitrum-eth_getstorageat.md): Arbitrum RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-arbitrum-eth_gettransactionbyblockhashandindex.md): Arbitrum RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-arbitrum-eth_gettransactionbyblocknumberandindex.md): Arbitrum RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-arbitrum-eth_gettransactionbyhash.md): Arbitrum RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-arbitrum-eth_gettransactioncount.md): Arbitrum RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-arbitrum-eth_gettransactionreceipt.md): Arbitrum RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-arbitrum-eth_getunclecountbyblockhash.md): Arbitrum RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-arbitrum-eth_getunclecountbyblocknumber.md): Arbitrum RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-arbitrum-eth_maxpriorityfeepergas.md): Arbitrum RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-arbitrum-eth_sendrawtransaction.md): Arbitrum RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-arbitrum-web3_clientversion.md): Arbitrum RPC - [Aurora](https://docs.tatum.io/reference/rpc-aurora.md): Aurora is an EVM-compatible blockchain providing high throughput and low fees. Build decentralized apps using the RPC gateway. - [Invoke a method in a smart contract on Avalanche](https://docs.tatum.io/reference/avalancheblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Avalanche.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send AVAX or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/avalancheblockchaintransfer.md):2 credits per API call
Send AVAX or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending AVAX, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Avalanche transaction](https://docs.tatum.io/reference/avalanchebroadcast.md):2 credits per API call
Broadcast signed transaction to Avalanche blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Avalanche account address from Extended public key](https://docs.tatum.io/reference/avalanchegenerateaddress.md):Generates an Avalanche account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Avalanche private key](https://docs.tatum.io/reference/avalanchegenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Avalanche wallet](https://docs.tatum.io/reference/avalanchegeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Avalanche wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Avalanche wallet.
- [Get the AVAX balance of an Avalanche account](https://docs.tatum.io/reference/avalanchegetbalance.md):⚠️ Deprecated: Get Avalanche Balance
GET /v3/avalanche/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of AVAX of an Avalanche account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Avalanche block by hash](https://docs.tatum.io/reference/avalanchegetblock.md):⚠️ Deprecated: Get Avalanche Block
GET /v3/avalanche/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Avalanche block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/avalanchegetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/avalanche/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Avalanche block number. This is the number of the latest block in the blockchain.
- [Get Avalanche Transaction](https://docs.tatum.io/reference/avalanchegettransaction.md):⚠️ Deprecated: Get Avalanche Transaction
GET /v3/avalanche/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Avalanche transaction by transaction hash.
- [Get count of outgoing Avalanche transactions](https://docs.tatum.io/reference/avalanchegettransactioncount.md):⚠️ Deprecated: Get Avalanche Transaction Count
GET /v3/avalanche/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Avalanche transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/avalancheweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Avalanche node provided by Tatum. To learn more about Avalanche Web3, visit the Avalanche developers' guide.
- [Avalanche](https://docs.tatum.io/reference/rpc-avalanche.md): Discover Avalanche, a fast and scalable blockchain with RPC access. Build dApps using its customizable subnets and comprehensive documentation. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-avalanche-debug_getbadblocks.md): Avalanche RPC - [debug_storageRangeAt](https://docs.tatum.io/reference/rpc-avalanche-debug_storagerangeat.md): Avalanche RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-avalanche-debug_traceblock.md): Avalanche RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-avalanche-debug_traceblockbyhash.md): Avalanche RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-avalanche-debug_traceblockbynumber.md): Avalanche RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-avalanche-debug_tracecall.md): Avalanche RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-avalanche-debug_tracetransaction.md): Avalanche RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-avalanche-eth_blocknumber.md): Avalanche RPC - [eth_call](https://docs.tatum.io/reference/rpc-avalanche-eth_call.md): Avalanche RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-avalanche-eth_chainid.md): Avalanche RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-avalanche-eth_estimategas.md): Avalanche RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-avalanche-eth_feehistory.md): Avalanche RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-avalanche-eth_gasprice.md): Avalanche RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-avalanche-eth_getbalance.md): Avalanche RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-avalanche-eth_getblockbyhash.md): Avalanche RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-avalanche-eth_getblockbynumber.md): Avalanche RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-avalanche-eth_getblocktransactioncountbyhash.md): Avalanche RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-avalanche-eth_getblocktransactioncountbynumber.md): Avalanche RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-avalanche-eth_getcode.md): Avalanche RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-avalanche-eth_getlogs.md): Avalanche RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-avalanche-eth_getproof.md): Avalanche RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-avalanche-eth_getstorageat.md): Avalanche RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-avalanche-eth_gettransactionbyblockhashandindex.md): Avalanche RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-avalanche-eth_gettransactionbyblocknumberandindex.md): Avalanche RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-avalanche-eth_gettransactionbyhash.md): Avalanche RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-avalanche-eth_gettransactioncount.md): Avalanche RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-avalanche-eth_gettransactionreceipt.md): Avalanche RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-avalanche-eth_getunclecountbyblockhash.md): Avalanche RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-avalanche-eth_getunclecountbyblocknumber.md): Avalanche RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-avalanche-eth_maxpriorityfeepergas.md): Avalanche RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-avalanche-eth_sendrawtransaction.md): Avalanche RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-avalanche-web3_clientversion.md): Avalanche RPC - [Invoke a method in a smart contract on Base](https://docs.tatum.io/reference/baseblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Base.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send BASE or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/baseblockchaintransfer.md):2 credits per API call
Send BASE or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending BASE, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Base transaction](https://docs.tatum.io/reference/basebroadcast.md):2 credits per API call
Broadcast signed transaction to Base blockchain.
- [Generate Base account address from Extended public key](https://docs.tatum.io/reference/basegenerateaddress.md):Generates an Base account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Base private key](https://docs.tatum.io/reference/basegenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Base wallet](https://docs.tatum.io/reference/basegeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Base wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Base wallet.
- [Get the BASE balance of an Base account](https://docs.tatum.io/reference/basegetbalance.md):⚠️ Deprecated: Get Base Balance
GET /v3/base/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of BASE of an Base account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Base block by hash](https://docs.tatum.io/reference/basegetblock.md):⚠️ Deprecated: Get Base Block
GET /v3/base/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Base block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/basegetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/base/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Base block number. This is the number of the latest block in the blockchain.
- [Get Base Transaction](https://docs.tatum.io/reference/basegettransaction.md):⚠️ Deprecated: Get Base Transaction
GET /v3/base/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Base transaction by transaction hash.
- [Get count of outgoing Base transactions](https://docs.tatum.io/reference/basegettransactioncount.md):⚠️ Deprecated: Get Base Transaction Count
GET /v3/base/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Base transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/baseweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Base node provided by Tatum. To learn more about Base Web3, visit the Base developers' guide.
- [Base](https://docs.tatum.io/reference/rpc-base.md): Explore Base, a new Layer 2 blockchain built to enhance scalability and security. Discover its potential for dApps, DeFi, and more. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-base-debug_getbadblocks.md): Base RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-base-debug_storagerangeat.md): Base RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-base-debug_traceblock.md): Base RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-base-debug_traceblockbyhash.md): Base RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-base-debug_traceblockbynumber.md): Base RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-base-debug_tracecall.md): Base RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-base-debug_tracetransaction.md): Base RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-base-eth_blocknumber.md): Base RPC - [eth_call](https://docs.tatum.io/reference/rpc-base-eth_call.md): Base RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-base-eth_chainid.md): Base RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-base-eth_estimategas.md): Base RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-base-eth_feehistory.md): Base RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-base-eth_gasprice.md): Base RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-base-eth_getbalance.md): Base RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-base-eth_getblockbyhash.md): Base RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-base-eth_getblockbynumber.md): Base RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-base-eth_getblocktransactioncountbyhash.md): Base RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-base-eth_getblocktransactioncountbynumber.md): Base RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-base-eth_getcode.md): Base RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-base-eth_getlogs.md): Base RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-base-eth_getproof.md): Base RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-base-eth_getstorageat.md): Base RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-base-eth_gettransactionbyblockhashandindex.md): Base RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-base-eth_gettransactionbyblocknumberandindex.md): Base RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-base-eth_gettransactionbyhash.md): Base RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-base-eth_gettransactioncount.md): Base RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-base-eth_gettransactionreceipt.md): Base RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-base-eth_getunclecountbyblockhash.md): Base RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-base-eth_getunclecountbyblocknumber.md): Base RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-base-eth_maxpriorityfeepergas.md): Base RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-base-eth_sendrawtransaction.md): Base RPC - [txpool_content](https://docs.tatum.io/reference/rpc-base-txpool_content.md): Base RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-base-txpool_inspect.md): Base RPC - [txpool_status](https://docs.tatum.io/reference/rpc-base-txpool_status.md): Base RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-base-web3_clientversion.md): Base RPC - [Berachain](https://docs.tatum.io/reference/rpc-berachain.md): Discover Berachain, an EVM-compatible blockchain combining speed, incentives, and world-class infrastructure. - [debug_traceBlockByHash - Berachain](https://docs.tatum.io/reference/rpc-berachain-debug_traceblockbyhash.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Broadcast signed transaction to Bitcoin Cash blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Bitcoin Cash deposit address from Extended public key](https://docs.tatum.io/reference/bchgenerateaddress.md):Generate Bitcoin Cash deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1. Generates new format of address starting with bitcoincash: in case of mainnet, bchtest: in case of testnet..
- [Generate Bitcoin Cash private key](https://docs.tatum.io/reference/bchgenerateaddressprivatekey.md):Generate private key for address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Bitcoin Cash wallet](https://docs.tatum.io/reference/bchgeneratewallet.md):Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Bitcoin Cash wallet with derivation path m'/44'/145'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Bitcoin Cash wallet.
- [Get Bitcoin Cash Block by hash](https://docs.tatum.io/reference/bchgetblock.md):⚠️ Deprecated: Get Block
GET /v3/bcash/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Get Bitcoin Cash Block detail by block hash or height.
- [Get Bitcoin Cash Blockchain Information](https://docs.tatum.io/reference/bchgetblockchaininfo.md):Get Bitcoin Cash Blockchain Information. Obtain basic info like testnet / mainnet version of the chain, current block number and it's hash.
- [Get Bitcoin Cash Block hash](https://docs.tatum.io/reference/bchgetblockhash.md):⚠️ Deprecated: Get Block Hash
GET /v3/bcash/block/hash/{i}is deprecated.Use
GET /v4/data/blockchains/block/hashFetch the hash of a block from the blockchain.
Get Bitcoin Cash Block hash. Returns hash of the block to get the block detail.
- [Get Bitcoin Cash Transaction by hash](https://docs.tatum.io/reference/bchgetrawtransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/bcash/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
Get Bitcoin Cash Transaction by transaction hash.
- [Get Bitcoin Cash Transactions by address](https://docs.tatum.io/reference/bchgettxbyaddress.md):Get Bitcoin Cash Transaction by address. Limit is 50 transaction per response.
> 📘 **Note:** > > This endpoint servers raw transaction data. - [JSON RPC HTTP driver](https://docs.tatum.io/reference/bchrpcdriver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based JSON RPC driver to connect directly to the node provided by Tatum. To learn more about JSON RPC, visit Bitcoin Cash developers' guide.
- [Send BCH to Bitcoin Cash addresses](https://docs.tatum.io/reference/bchtransferblockchain.md):10 credits per API call
Send BCH to blockchain addresses.
Bitcoin Cash transactions are based on UTXOs. "UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of BCH that remains at a Bitcoin Cash address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information the UTXO, see the Bitcoin user documentation.
You build a BCH transaction by sending BCH from UTXOs. Each UTXO is included in the transaction.
When an UTXO is entered into a transaction, the whole UTXO amount is included and must be spent. For example, address A receives two transactions, T1 with 1 BCH and T2 with 2 BCH. A transaction that consumes the UTXOs from both T1 and T2 will have an available amount of 3 BCH to spend:1 BCH (from T1) + 2 BCH (from T2) = 3 BCH (to spend in total)
You can send the assets to one or multiple recipients in one transaction. If you send the assets to multiple addresses, each address must have its own amount to receive.
Paying the gas fee and receiving the change
When the amount that the recipients should receive is lower than the amount from the UTXOs, the difference between these two amounts is by default used as the gas fee for the transaction. Because this amount may be considerable and you may not want to spend it all on the gas fee, you can explicitly specify the fee amount and the blockchain address where any extra funds remaining after covering the fee will be sent (the fee and changeAddress parameters in the request body, correspondingly).
Signing a transaction
When sending BCH, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Bitcoin Cash](https://docs.tatum.io/reference/rpc-bitcoin-cash.md): Learn about Bitcoin Cash, a fast and low-fee blockchain for peer-to-peer transactions. Discover how it empowers global decentralized payments. - [createrawtransaction](https://docs.tatum.io/reference/rpc-bch-createrawtransaction.md): BCH RPC - [decoderawtransaction](https://docs.tatum.io/reference/rpc-bch-decoderawtransaction.md): BCH RPC - [decodescript](https://docs.tatum.io/reference/rpc-bch-decodescript.md): BCH RPC - [estimatefee](https://docs.tatum.io/reference/rpc-bch-estimatefee.md): BCH RPC - [getbestblockhash](https://docs.tatum.io/reference/rpc-bch-getbestblockhash.md): BCH RPC - [getblock](https://docs.tatum.io/reference/rpc-bch-getblock.md): BCH RPC - [getblockchaininfo](https://docs.tatum.io/reference/rpc-bch-getblockchaininfo.md): BCH RPC - [getblockcount](https://docs.tatum.io/reference/rpc-bch-getblockcount.md): BCH RPC - [getblockhash](https://docs.tatum.io/reference/rpc-bch-getblockhash.md): BCH RPC - [getblockheader](https://docs.tatum.io/reference/rpc-bch-getblockheader.md): BCH RPC - [getblockstats](https://docs.tatum.io/reference/rpc-bch-getblockstats.md): BCH RPC - [getchaintips](https://docs.tatum.io/reference/rpc-bch-getchaintips.md): BCH RPC - [getdifficulty](https://docs.tatum.io/reference/rpc-bch-getdifficulty.md): BCH RPC - [getmempoolancestors](https://docs.tatum.io/reference/rpc-bch-getmempoolancestors.md): BCH RPC - [getmempooldescendants](https://docs.tatum.io/reference/rpc-bch-getmempooldescendants.md): BCH RPC - [getmempoolentry](https://docs.tatum.io/reference/rpc-bch-getmempoolentry.md): BCH RPC - [getmempoolinfo](https://docs.tatum.io/reference/rpc-bch-getmempoolinfo.md): BCH RPC - [getrawmempool](https://docs.tatum.io/reference/rpc-bch-getrawmempool.md): BCH RPC - [getrawtransaction](https://docs.tatum.io/reference/rpc-bch-getrawtransaction.md): BCH RPC - [gettxout](https://docs.tatum.io/reference/rpc-bch-gettxout.md): BCH RPC - [gettxoutproof](https://docs.tatum.io/reference/rpc-bch-gettxoutproof.md): BCH RPC - [sendrawtransaction](https://docs.tatum.io/reference/rpc-bch-sendrawtransaction.md): BCH RPC - [validateaddress](https://docs.tatum.io/reference/rpc-bch-validateaddress.md): BCH RPC - [verifymessage](https://docs.tatum.io/reference/rpc-bch-verifymessage.md): BCH RPC - [verifytxoutproof](https://docs.tatum.io/reference/rpc-bch-verifytxoutproof.md): BCH RPC - [Rostrum](https://docs.tatum.io/reference/rpc-rostrum.md) - [blockchainaddressgetbalance](https://docs.tatum.io/reference/rpc-rostrum-blockchainaddressgetbalance.md): Rostrum Electrum for Bitcoin Cash - [blockchainaddressgethistory](https://docs.tatum.io/reference/rpc-rostrum-blockchainaddressgethistory.md): Rostrum Electrum for Bitcoin Cash - [blockchainaddressgetmempool](https://docs.tatum.io/reference/rpc-rostrum-blockchainaddressgetmempool.md): Rostrum Electrum for Bitcoin Cash - [blockchainaddresslistunspent](https://docs.tatum.io/reference/rpc-rostrum-blockchainaddresslistunspent.md): Rostrum Electrum for Bitcoin Cash - [blockchainblockget](https://docs.tatum.io/reference/rpc-rostrum-blockchainblockget.md): Rostrum Electrum for Bitcoin Cash - [blockchainblockheader](https://docs.tatum.io/reference/rpc-rostrum-blockchainblockheader.md): Rostrum Electrum for Bitcoin Cash - [blockchainblockheaders](https://docs.tatum.io/reference/rpc-rostrum-blockchainblockheaders.md): Rostrum Electrum for Bitcoin Cash - [blockchainestimatefee](https://docs.tatum.io/reference/rpc-rostrum-blockchainestimatefee.md): Rostrum Electrum for Bitcoin Cash - [blockchainheaderssubscribe](https://docs.tatum.io/reference/rpc-rostrum-blockchainheaderssubscribe.md): Rostrum Electrum for Bitcoin Cash - [blockchainheaderstip](https://docs.tatum.io/reference/rpc-rostrum-blockchainheaderstip.md): Rostrum Electrum for Bitcoin Cash - [blockchainrelayfee](https://docs.tatum.io/reference/rpc-rostrum-blockchainrelayfee.md): Rostrum Electrum for Bitcoin Cash - [blockchaintransactionbroadcast](https://docs.tatum.io/reference/rpc-rostrum-blockchaintransactionbroadcast.md): Rostrum Electrum for Bitcoin Cash - [blockchaintransactionget](https://docs.tatum.io/reference/rpc-rostrum-blockchaintransactionget.md): Rostrum Electrum for Bitcoin Cash and Nexa - [serverbanner](https://docs.tatum.io/reference/rpc-rostrum-serverbanner.md): Rostrum Electrum for Bitcoin Cash - [serverversion](https://docs.tatum.io/reference/rpc-rostrum-serverversion.md): Rostrum Electrum for Bitcoin Cash - [Invoke a method in a smart contract on BNB Smart Chain](https://docs.tatum.io/reference/bscblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on BNB Smart Chain.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send BSC / BEP20 from account to account](https://docs.tatum.io/reference/bscblockchaintransfer.md):2 credits per API call
Send BNB or Tatum supported BEP20 token from account to account.
Signing a transaction
When sending BNB, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed BSC transaction](https://docs.tatum.io/reference/bscbroadcast.md):2 credits per API call
Broadcast signed transaction to BSC blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate BSC account address from Extended public key](https://docs.tatum.io/reference/bscgenerateaddress.md):1 credit per API call
Generate BSC account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate BSC private key](https://docs.tatum.io/reference/bscgenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate BSC wallet](https://docs.tatum.io/reference/bscgeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for BSC wallet with derivation path m'/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible BSC wallet.
- [Get BSC Account balance](https://docs.tatum.io/reference/bscgetbalance.md):⚠️ Deprecated: Get BSC Balance
GET /v3/bsc/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get BSC account balance in BNB. This method does not prints any balance of the BEP20 or BEP721 tokens on the account.
- [Get BSC block by hash](https://docs.tatum.io/reference/bscgetblock.md):⚠️ Deprecated: Get BSC Block
GET /v3/bsc/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
1 credit per API call
Get BSC block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/bscgetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/bsc/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
1 credit per API call
Get BSC current block number. This is the number of the latest block in the blockchain.
- [Get BSC Transaction](https://docs.tatum.io/reference/bscgettransaction.md):⚠️ Deprecated: Get BSC Transaction
GET /v3/bsc/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
2 credits per API call
Get BSC transaction by transaction hash.
- [Get count of outgoing BSC transactions](https://docs.tatum.io/reference/bscgettransactioncount.md):⚠️ Deprecated: Get BSC Transaction Count
GET /v3/bsc/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
1 credit per API call
Get a number of outgoing BSC transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/bscweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the BSC node provided by Tatum. To learn more about BSC Web3, visit the BSC developer's guide.
- [Binance Smart Chain (BSC)](https://docs.tatum.io/reference/rpc-bsc.md): Explore Binance Smart Chain (BSC), a leading blockchain for DeFi and NFTs. Enjoy low fees, fast transactions, and extensive dApp support. - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-bsc-debug_storagerangeat.md): Bsc RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-bsc-debug_traceblockbyhash.md): Bsc RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-bsc-debug_traceblockbynumber.md): Bsc RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-bsc-debug_tracecall.md): Bsc RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-bsc-debug_tracetransaction.md): Bsc RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-bsc-eth_blocknumber.md): Bsc RPC - [eth_call](https://docs.tatum.io/reference/rpc-bsc-eth_call.md): Bsc RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-bsc-eth_chainid.md): Bsc RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-bsc-eth_estimategas.md): Bsc RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-bsc-eth_feehistory.md): Bsc RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-bsc-eth_gasprice.md): Bsc RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-bsc-eth_getbalance.md): Bsc RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-bsc-eth_getblockbyhash.md): Bsc RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-bsc-eth_getblockbynumber.md): Bsc RPC - [eth_getBlockReceipts](https://docs.tatum.io/reference/rpc-bsc-eth_getblockreceipts.md): BSC RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-bsc-eth_getblocktransactioncountbyhash.md): Bsc RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-bsc-eth_getblocktransactioncountbynumber.md): Bsc RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-bsc-eth_getcode.md): Bsc RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-bsc-eth_getlogs.md): Bsc RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-bsc-eth_getproof.md): Bsc RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-bsc-eth_getstorageat.md): Bsc RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-bsc-eth_gettransactionbyblockhashandindex.md): Bsc RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-bsc-eth_gettransactionbyblocknumberandindex.md): Bsc RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-bsc-eth_gettransactionbyhash.md): Bsc RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-bsc-eth_gettransactioncount.md): Bsc RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-bsc-eth_gettransactionreceipt.md): Bsc RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-bsc-eth_getunclecountbyblockhash.md): Bsc RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-bsc-eth_getunclecountbyblocknumber.md): Bsc RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-bsc-eth_maxpriorityfeepergas.md): Bsc RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-bsc-eth_sendrawtransaction.md): Bsc RPC - [trace_block](https://docs.tatum.io/reference/rpc-bsc-trace_block.md): Bsc RPC - [txpool_content](https://docs.tatum.io/reference/rpc-bsc-txpool_content.md): Bsc RPC - [txpool_status](https://docs.tatum.io/reference/rpc-bsc-txpool_status.md): Bsc RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-bsc-web3_clientversion.md): Bsc RPC - [Broadcast a signed Bitcoin transaction](https://docs.tatum.io/reference/btcbroadcast.md):2 credits per API call
Broadcasts a signed transaction to the Bitcoin blockchain. This method is used internally from Tatum KMS or Tatum Client Libraries. It is possible to create a custom signing mechanism and only use this method for broadcasting data to the blockchain.
- [Generate a Bitcoin address from the wallet's extended public key](https://docs.tatum.io/reference/btcgenerateaddress.md):1 credit per API call
Generate a Bitcoin address from the extended public key of the wallet. The address is generated for the specific index - each extended public key can generate up to 2^32 addresses with the index starting from 0 up to 2^31 - 1.
- [Generate the private key for a Bitcoin address](https://docs.tatum.io/reference/btcgenerateaddressprivatekey.md):1 credit per API call
Generates a private key for an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate a Bitcoin wallet](https://docs.tatum.io/reference/btcgeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Bitcoin wallet with derivation path m'/44'/0'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Bitcoin wallet.
- [Get the balance of a Bitcoin address](https://docs.tatum.io/reference/btcgetbalanceofaddress.md):⚠️ Deprecated: Get Bitcoin Address Balance
GET /v3/bitcoin/address/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet the balance of a Bitcoin address.
1 credit per API call
Get the balance of a Bitcoin address.
⚠️ Deprecated: Get Bitcoin Address Balance Batch
GET /v3/bitcoin/address/balance/batchis deprecated.Use
GET /v4/data/blockchains/balance/batchGet the balance of multiple Bitcoin addresses.
1 credit per address for each API call
Get the balance of multiple Bitcoin addresses.
- [Get a Bitcoin block by its hash or height](https://docs.tatum.io/reference/btcgetblock.md):⚠️ Deprecated: Get Bitcoin Block
GET /v3/bitcoin/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch the Bitcoin block details by block hash or height. This endpoint returns information about a specific block.
1 credit per API call
Gets Bitcoin block detail by block hash or height.
- [Get Bitcoin blockchain information](https://docs.tatum.io/reference/btcgetblockchaininfo.md):1 credit per API call
Gets Bitcoin blockchain information. Obtains basic info like the testnet / mainnet version of the chain, the current block number and its hash.
- [Get the hash of a Bitcoin block](https://docs.tatum.io/reference/btcgetblockhash.md):⚠️ Deprecated: Get Bitcoin Block Hash
GET /v3/bitcoin/block/hash/{i}is deprecated.Use
GET /v4/data/blockchains/blockFetch the Bitcoin block hash by block number. Returns the hash of the block to get the block details.
1 credit per API call
Gets a Bitcoin block hash. Returns the hash of the block to get the block's details.
- [Get transactions from the Bitcoin mempool](https://docs.tatum.io/reference/btcgetmempool.md):⚠️ Deprecated: Get Bitcoin Mempool
GET /v3/bitcoin/mempoolis deprecated.Use
GET /v4/data/blockchains/mempoolFetch Bitcoin transaction IDs in the mempool.
1 credit per API call
Gets Bitcoin transaction IDs in the mempool.
- [Get a Bitcoin transaction by its hash](https://docs.tatum.io/reference/btcgetrawtransaction.md):⚠️ Deprecated: Get Bitcoin Transaction by hash
GET /v3/bitcoin/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch the Bitcoin transaction details by transaction hash. This endpoint returns information about a specific transaction.
1 credit per API call
Get Bitcoin Transaction detail by transaction hash.
- [Get all transactions for a Bitcoin address](https://docs.tatum.io/reference/btcgettxbyaddress.md):⚠️ Deprecated: Get Transactions by Address
GET /v3/bitcoin/transaction/address/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/history/utxosFetch all transactions for a Bitcoin address. Returns also transactions that are in mempool.
1 credit per API call
Get all transactions for a Bitcoin address. Returns also transactions that are in mempool and haven't been included in a block. In that case blockNumber has a null value.
- [Get transactions for multiple Bitcoin addresses in a batch](https://docs.tatum.io/reference/btcgettxbyaddressbatch.md):⚠️ Deprecated: Get Transactions by Address Batch
POST /v3/bitcoin/transaction/address/batchis deprecated.Use
POST /v4/data/blockchains/transaction/history/utxos/batchRetrieve transactions for multiple Bitcoin addresses in a batch.
1 credit per address for each API call
Retrieve transactions for multiple Bitcoin addresses in a batch.
- [Get information about a transaction output (UTXO) in a Bitcoin transaction](https://docs.tatum.io/reference/btcgetutxo.md):⚠️ Deprecated: Get Bitcoin UTXO
GET /v3/bitcoin/utxo/{hash}/{index}is deprecated.Use
GET /v4/data/blockchains/utxo/infoFetch information about a transaction output in a transaction and check whether this output is a UTXO or has been spent.
1 credit per API call
Get information about a transaction output in a transaction and check whether this output is a UTXO or has been spent.
"UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of BTC/satoshis that remains at a Bitcoin address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information about Bitcoin transactions and UTXO, see the Bitcoin user documentation.
404 response code.This endpoint is deprecated. Do not use it.
Instead, use this API.
2 credits per API call
Use this endpoint URL as an http-based JSON RPC driver to connect directly to the node provided by Tatum. To learn more about JSON RPC, visit the Bitcoin developers' guide.
- [Send BTC to Bitcoin addresses](https://docs.tatum.io/reference/btctransferblockchain.md):2 credits per API call
Send BTC to blockchain addresses.
Bitcoin transactions are based on UTXOs. "UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of BTC/satoshis that remains at a Bitcoin address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information about Bitcoin transactions and UTXO, see the Bitcoin user documentation. To check UTXOs in a transaction, see the API for getting information about a transaction output (UTXO) in a Bitcoin transaction.
You can build a BTC transaction by one of the following methods:
BtcTransactionFromAddress or BtcTransactionFromAddressKMS schema of the request body.BtcTransactionFromUTXO or BtcTransactionFromUTXOKMS schema of the request body.When an UTXO is entered into a transaction, the whole UTXO amount is included and must be spent. For example, address A receives two transactions, T1 with 1 BTC and T2 with 2 BTC. A transaction that consumes the UTXOs from both T1 and T2 will have an available amount of 3 BTC to spend:1 BTC (from T1) + 2 BTC (from T2) = 3 BTC (to spend in total)
You can send the assets to one or multiple recipients in one transaction. If you send the assets to multiple addresses, each address must have its own amount to receive.
Paying the gas fee and receiving the change
When the amount that the recipients should receive is lower than the amount from the UTXOs, the difference between these two amounts is by default used as the gas fee for the transaction. Because this amount may be considerable and you may not want to spend it all on the gas fee, you can explicitly specify the fee amount and the blockchain address where any extra funds remaining after covering the fee will be sent (the fee and changeAddress parameters in the request body, correspondingly).
Signing a transaction
When sending BTC, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Bitcoin](https://docs.tatum.io/reference/rpc-btc.md): Explore Bitcoin, the world’s first decentralized digital currency. Discover how it revolutionized peer-to-peer transactions and blockchain. - [blockchainBlockGet](https://docs.tatum.io/reference/rpc-electrs-blockchainblockget.md): Electrum for Bitcoin - [blockchainBlockHeader](https://docs.tatum.io/reference/rpc-electrs-blockchainblockheader.md): Electrum for Bitcoin - [blockchainBlockHeaders](https://docs.tatum.io/reference/rpc-electrs-blockchainblockheaders.md): Electrum for Bitcoin - [blockchainEstimateFee](https://docs.tatum.io/reference/rpc-electrs-blockchainestimatefee.md): Electrum for Bitcoin - [blockchainHeadersSubscribe](https://docs.tatum.io/reference/rpc-electrs-blockchainheaderssubscribe.md): Electrum for Bitcoin - [blockchainHeadersTip](https://docs.tatum.io/reference/rpc-electrs-blockchainheaderstip.md): Electrum for Bitcoin - [blockchainRelayFee](https://docs.tatum.io/reference/rpc-electrs-blockchainrelayfee.md): Electrum for Bitcoin - [blockchainTransactionBroadcast](https://docs.tatum.io/reference/rpc-electrs-blockchaintransactionbroadcast.md): Electrum for Bitcoin - [blockchainTransactionGet](https://docs.tatum.io/reference/rpc-electrs-blockchaintransactionget.md): Electrum for Bitcoin - [serverBanner](https://docs.tatum.io/reference/rpc-electrs-serverbanner.md): Electrum for Bitcoin - [serverVersion](https://docs.tatum.io/reference/rpc-electrs-serverversion.md): Electrum for Bitcoin - [createrawtransaction](https://docs.tatum.io/reference/rpc-btc-createrawtransaction.md): Bitcoin RPC - [decoderawtransaction](https://docs.tatum.io/reference/rpc-btc-decoderawtransaction.md): Bitcoin RPC - [getbestblockhash](https://docs.tatum.io/reference/rpc-btc-getbestblockhash.md): Bitcoin RPC - [getblock](https://docs.tatum.io/reference/rpc-btc-getblock.md): Bitcoin RPC - [getblockchaininfo](https://docs.tatum.io/reference/rpc-btc-getblockchaininfo.md): Bitcoin RPC - [getblockcount](https://docs.tatum.io/reference/rpc-btc-getblockcount.md): Bitcoin RPC - [getblockhash](https://docs.tatum.io/reference/rpc-btc-getblockhash.md): Bitcoin RPC - [getblockheader](https://docs.tatum.io/reference/rpc-btc-getblockheader.md): Bitcoin RPC - [getblockstats](https://docs.tatum.io/reference/rpc-btc-getblockstats.md): Bitcoin RPC - [getchaintips](https://docs.tatum.io/reference/rpc-btc-getchaintips.md): Bitcoin RPC - [getdifficulty](https://docs.tatum.io/reference/rpc-btc-getdifficulty.md): Bitcoin RPC - [getmempoolancestors](https://docs.tatum.io/reference/rpc-btc-getmempoolancestors.md): Bitcoin RPC - [getmempooldescendants](https://docs.tatum.io/reference/rpc-btc-getmempooldescendants.md): Bitcoin RPC - [getmempoolentry](https://docs.tatum.io/reference/rpc-btc-getmempoolentry.md): Bitcoin RPC - [getmempoolinfo](https://docs.tatum.io/reference/rpc-btc-getmempoolinfo.md): Bitcoin RPC - [getrawmempool](https://docs.tatum.io/reference/rpc-btc-getrawmempool.md): Bitcoin RPC - [gettxout](https://docs.tatum.io/reference/rpc-btc-gettxout.md): Bitcoin RPC - [gettxoutproof](https://docs.tatum.io/reference/rpc-btc-gettxoutproof.md): Bitcoin RPC - [validateaddress](https://docs.tatum.io/reference/rpc-btc-validateaddress.md): Bitcoin RPC - [verifymessage](https://docs.tatum.io/reference/rpc-btc-verifymessage.md): Bitcoin RPC - [verifytxoutproof](https://docs.tatum.io/reference/rpc-btc-verifytxoutproof.md): Bitcoin RPC - [Bitcoin Electrum](https://docs.tatum.io/reference/rpc-electrs.md): Bitcoin Electrum - [call](https://docs.tatum.io/reference/rpc-cardano-rosetta-call.md): Call invokes an arbitrary, network-specific procedure call with network-specific parameters. The guidance for what this endpoint should or could do is purposely left vague. In Ethereum, this could be used to invoke `eth_call` to implement an entire Rosetta API interface for some smart contract that is not parsed by the implementation creator (like a DEX). This endpoint could also be used to provide access to data that does not map to any Rosetta models instead of requiring an integrator to use some network-specific SDK and call some network-specific endpoint (like surfacing staking parameters). Call is NOT a replacement for implementing Rosetta API endpoints or mapping network-specific data to Rosetta models. Rather, it enables developers to build additional Rosetta API interfaces for things they care about without introducing complexity into a base-level Rosetta implementation. Simply put, imagine that the average integrator will use layered Rosetta API implementations that each surfaces unique data. - [constructionPreprocess](https://docs.tatum.io/reference/rpc-cardano-rosetta-construction_preprocess.md): Preprocess is called prior to `/construction/payloads` to construct a request for any metadata that is needed for transaction construction given (i.e. account nonce). The `options` object returned from this endpoint will be sent to the `/construction/metadata` endpoint UNMODIFIED by the caller (in an offline execution environment). If your Construction API implementation has configuration options, they MUST be specified in the `/construction/preprocess` request (in the `metadata` field). - [createNetworkTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-create_network_transaction.md): Combine creates a network-specific transaction from an unsigned transaction and an array of provided signatures. The signed transaction returned from this method will be sent to the `/construction/submit` endpoint by the caller. - [deriveAccount](https://docs.tatum.io/reference/rpc-cardano-rosetta-derive_account.md): Derive returns the AccountIdentifier associated with a public key. Blockchains that require an on-chain action to create an account should not implement this method. - [generateUnsignedTransactionAndSigningPayloads](https://docs.tatum.io/reference/rpc-cardano-rosetta-generate_unsigne_transaction_and_signing_payloads.md): Payloads is called with an array of operations and the response from `/construction/metadata`. It returns an unsigned transaction blob and a collection of payloads that must be signed by particular AccountIdentifiers using a certain SignatureType. The array of operations provided in transaction construction often times can not specify all "effects" of a transaction (consider invoked transactions in Ethereum). However, they can deterministically specify the "intent" of the transaction, which is sufficient for construction. For this reason, parsing the corresponding transaction in the Data API (when it lands on chain) will contain a superset of whatever operations were provided during construction. - [getAccountBalance](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_account_balance.md): Get an array of all AccountBalances for an AccountIdentifier and the BlockIdentifier at which the balance lookup was performed. The BlockIdentifier must always be returned because some consumers of account balance data need to know specifically at which block the balance was calculated to compare balances they compute from operations with the balance returned by the node. It is important to note that making a balance request for an account without populating the SubAccountIdentifier should not result in the balance of all possible SubAccountIdentifiers being returned. Rather, it should result in the balance pertaining to no SubAccountIdentifiers being returned (sometimes called the liquid balance). To get all balances associated with an account, it may be necessary to perform multiple balance requests with unique AccountIdentifiers. It is also possible to perform a historical balance lookup (if the server supports it) by passing in an optional BlockIdentifier. - [getAccountCoins](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_account_coins.md): Get an array of all unspent coins for an AccountIdentifier and the BlockIdentifier at which the lookup was performed. If your implementation does not support coins (i.e. it is for an account-based blockchain), you do not need to implement this endpoint. If you implementation does support coins (i.e. it is fro a UTXO-based blockchain), you MUST also complete the `/account/balance` endpoint. It is important to note that making a coins request for an account without populating the SubAccountIdentifier should not result in the coins of all possible SubAccountIdentifiers being returned. Rather, it should result in the coins pertaining to no SubAccountIdentifiers being returned. To get all coins associated with an account, it may be necessary to perform multiple coin requests with unique AccountIdentifiers. Optionally, an implementation may choose to support updating an AccountIdentifier's unspent coins based on the contents of the mempool. Note, using this functionality breaks any guarantee of idempotency. - [getBlockTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_block_transaction.md): Get a transaction in a block by its Transaction Identifier. This endpoint should only be used when querying a node for a block does not return all transactions contained within it. All transactions returned by this endpoint must be appended to any transactions returned by the /block method by consumers of this data. Fetching a transaction by hash is considered an Explorer Method (which is classified under the Future Work section). This method can be used to let consumers to paginate results when the block trasactions count is too big to be returned in a single BlockResponse. Calling this endpoint requires reference to a BlockIdentifier because transaction parsing can change depending on which block contains the transaction. For example, in Bitcoin it is necessary to know which block contains a transaction to determine the destination of fee payments. Without specifying a block identifier, the node would have to infer which block to use (which could change during a re-org). Implementations that require fetching previous transactions to populate the response (ex: Previous UTXOs in Bitcoin) may find it useful to run a cache within the Rosetta server in the /data directory (on a path that does not conflict with the node). - [getBlock](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_block.md): Get a block by its Block Identifier. If transactions are returned in the same call to the node as fetching the block, the response should include these transactions in the Block object. If not, an array of Transaction Identifiers should be returned so /block/transaction fetches can be done to get all transaction information. When requesting a block by the hash component of the BlockIdentifier, this request MUST be idempotent: repeated invocations for the same hash-identified block must return the exact same block contents. No such restriction is imposed when requesting a block by height, given that a chain reorg event might cause the specific block at height `n` to be set to a different one. - [getEventsBlocks](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_events_blocks.md): `/events/blocks` allows the caller to query a sequence of BlockEvents indicating which blocks were added and removed from storage to reach the current state. Following BlockEvents allows lightweight clients to update their state without needing to implement their own syncing logic (like finding the common parent in a reorg). `/events/blocks` is considered an "indexer" endpoint and Rosetta implementations are not required to complete it to adhere to the Rosetta spec. However, any Rosetta "indexer" MUST support this endpoint. - [getHashOfTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_hash_of_transaction.md): TransactionHash returns the network-specific transaction hash for a signed transaction. - [getMempoolTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_mempool_transaction.md): Get a transaction in the mempool by its Transaction Identifier. This is a separate request than fetching a block transaction (/block/transaction) because some blockchain nodes need to know that a transaction query is for something in the mempool instead of a transaction in a block. Transactions may not be fully parsable until they are in a block (ex: may not be possible to determine the fee to pay before a transaction is executed). On this endpoint, it is ok that returned transactions are only estimates of what may actually be included in a block. - [getMempool](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_mempool.md): Get all Transaction Identifiers in the mempool - [getNetworkList](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_network_list.md): This endpoint returns a list of NetworkIdentifiers that the Rosetta server supports. - [getNetworkOptions](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_network_options.md): This endpoint returns the version information and allowed network-specific types for a NetworkIdentifier. Any NetworkIdentifier returned by /network/list should be accessible here. Because options are retrievable in the context of a NetworkIdentifier, it is possible to define unique options for each network. - [getNetworkStatus](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_network_status.md): This endpoint returns the current status of the network requested. Any NetworkIdentifier returned by /network/list should be accessible here. - [getTransactionConstructionMetadata](https://docs.tatum.io/reference/rpc-cardano-rosetta-get_transaction_construction_metadata.md): Get any information required to construct a transaction for a specific network. Metadata returned here could be a recent hash to use, an account sequence number, or even arbitrary chain state. The request used when calling this endpoint is created by calling `/construction/preprocess` in an offline environment. You should NEVER assume that the request sent to this endpoint will be created by the caller or populated with any custom parameters. This must occur in `/construction/preprocess`. It is important to clarify that this endpoint should not pre-construct any transactions for the client (this should happen in `/construction/payloads`). This endpoint is left purposely unstructured because of the wide scope of metadata that could be required. - [parseTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-parse_transaction.md): Parse is called on both unsigned and signed transactions to understand the intent of the formulated transaction. This is run as a sanity check before signing (after `/construction/payloads`) and before broadcast (after `/construction/combine`). - [searchTransactions](https://docs.tatum.io/reference/rpc-cardano-rosetta-search_transactions.md): `/search/transactions` allows the caller to search for transactions that meet certain conditions. Some conditions include matching a transaction hash, containing an operation with a certain status, or containing an operation that affects a certain account. `/search/transactions` is considered an "indexer" endpoint and Rosetta implementations are not required to complete it to adhere to the Rosetta spec. However, any Rosetta "indexer" MUST support this endpoint. - [submitTransaction](https://docs.tatum.io/reference/rpc-cardano-rosetta-submit_transaction.md): Submit a pre-signed transaction to the node. This call should not block on the transaction being included in a block. Rather, it should return immediately with an indication of whether or not the transaction was included in the mempool. The transaction submission response should only return a 200 status if the submitted transaction could be included in the mempool. Otherwise, it should return an error. - [Broadcast signed Ada transaction](https://docs.tatum.io/reference/adabroadcast.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Broadcasts a signed transaction to the Ada blockchain. This method is used internally from Tatum KMS or Tatum Client Libraries. It is possible to create a custom signing mechanism and only use this method for broadcasting data to the blockchain.
- [Generate Ada deposit address from Extended public key](https://docs.tatum.io/reference/adagenerateaddress.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Generates a Ada deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Ada private key](https://docs.tatum.io/reference/adagenerateaddressprivatekey.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Generates a private key for an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Ada wallet](https://docs.tatum.io/reference/adageneratewallet.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for ADA wallet with derivation path m/1852'/1815'/0'. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Ada wallet.
- [Gets a Ada account by address](https://docs.tatum.io/reference/adagetaccount.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Gets a Ada account by address.
- [Get Block by hash or height](https://docs.tatum.io/reference/adagetblock.md):⚠️ Deprecated: Get Block
GET /v3/ada/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Gets Ada block detail by block hash or height.
- [Get Blockchain information](https://docs.tatum.io/reference/adagetblockchaininfo.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Gets Ada blockchain information. Obtains basic info like the testnet / mainnet version of the chain, the current block number and its hash.
- [Get transaction by hash](https://docs.tatum.io/reference/adagetrawtransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/ada/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Get Ada Transaction detail by transaction hash.
- [Get transactions by address](https://docs.tatum.io/reference/adagettxbyaddress.md):⚠️ Deprecated: Get Transactions By Address
GET /v3/ada/transaction/address/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/history/utxosFetch transaction history for a UTXO blockchain address.
You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Gets a Ada transaction by address.
- [Get UTXOs by address](https://docs.tatum.io/reference/adagetutxobyaddress.md):You can work with Cardano by connecting directly to a blockchain node provided by Tatum.
Gets a Ada UTXOs by address.
- [Send ADA to Cardano addresses](https://docs.tatum.io/reference/adatransferblockchain.md):2 credits per API call
Send ADA to blockchain addresses.
Cardano transactions are based on UTXOs. "UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of ADA that remains at a Cardano address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information about the UTXO, see the Bitcoin user documentation.
You can build an ADA transaction by one of the following methods:
AdaTransactionFromAddress or AdaTransactionFromAddressKMS schema of the request body.AdaTransactionFromUTXO or AdaTransactionFromUTXOKMS schema of the request body.When an UTXO is entered into a transaction, the whole UTXO amount is included and must be spent. For example, address A receives two transactions, T1 with 1 ADA and T2 with 2 ADA. A transaction that consumes the UTXOs from both T1 and T2 will have an available amount of 3 ADA to spend:1 ADA (from T1) + 2 ADA (from T2) = 3 ADA (to spend in total)
You can send the assets to one or multiple recipients in one transaction. If you send the assets to multiple addresses, each address must have its own amount to receive.
Paying the gas fee and receiving the change
When the amount that the recipients should receive is lower than the amount from the UTXOs, the difference between these two amounts is by default used as the gas fee for the transaction. Because this amount may be considerable and you may not want to spend it all on the gas fee, you can explicitly specify the fee amount and the blockchain address where any extra funds remaining after covering the fee will be sent (the fee and changeAddress parameters in the request body, correspondingly).
Signing a transaction
When sending ADA, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Cardano](https://docs.tatum.io/reference/rpc-cardano.md): Discover Cardano, a proof-of-stake blockchain designed for sustainable dApps. Explore its unique approach to scalability and security. - [Casper](https://docs.tatum.io/reference/rpc-casper.md): Explore Casper, a blockchain optimized for enterprise solutions with upgradable smart contracts. Build decentralized applications using its RPC gateway. - [account_put_deploy](https://docs.tatum.io/reference/rpc-account_put_deploy.md): Casper RPC - [chain_get_block_transfers](https://docs.tatum.io/reference/rpc-casper-chain_get_block_transfers.md): Casper RPC - [chain_get_block](https://docs.tatum.io/reference/rpc-casper-chain_get_block.md): Casper RPC - [chain_get_era_by_block](https://docs.tatum.io/reference/rpc-casper-chain_get_era_by_block.md): Casper RPC - [chain_get_era_summary](https://docs.tatum.io/reference/rpc-casper-chain_get_era_summary.md): Casper RPC - [chain_get_state_root_hash](https://docs.tatum.io/reference/rpc-casper-chain_get_state_root_hash.md): Casper RPC - [info_get_chainspec](https://docs.tatum.io/reference/rpc-casper-info_get_chainspec.md): Casper RPC - [info_get_deploy](https://docs.tatum.io/reference/rpc-casper-info_get_deploy.md): Casper RPC - [info_get_status](https://docs.tatum.io/reference/rpc-casper-info_get_status.md): Casper RPC - [info_get_validator_changes](https://docs.tatum.io/reference/rpc-casper-info_get_validator_changes.md): Casper RPC - [query_balance](https://docs.tatum.io/reference/rpc-casper-query_balance.md): Casper RPC - [query_global_state](https://docs.tatum.io/reference/rpc-casper-query_global_state.md): Casper RPC - [state_get_account_info](https://docs.tatum.io/reference/rpc-casper-state_get_account_info.md): Casper RPC - [state_get_auction_info](https://docs.tatum.io/reference/rpc-casper-state_get_auction_info.md): Casper RPC - [state_get_dictionary_item](https://docs.tatum.io/reference/rpc-casper-state_get_dictionary_item.md): Casper RPC - [Invoke a method in a smart contract on Celo](https://docs.tatum.io/reference/celoblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Celo.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send Celo / ERC20 from account to account](https://docs.tatum.io/reference/celoblockchaintransfer.md):2 credits per API call
Send Celo, cUSD or Tatum supported ERC20 token from account to account.
Signing a transaction
When sending CELO, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Celo transaction](https://docs.tatum.io/reference/celobroadcast.md):2 credits per API call
Broadcast signed transaction to Celo blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Celo account address from Extended public key](https://docs.tatum.io/reference/celogenerateaddress.md):1 credit per API call
Generate Celo account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate Celo private key](https://docs.tatum.io/reference/celogenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate Celo wallet](https://docs.tatum.io/reference/celogeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Celo wallet with derivation path m'/44'/52752'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Celo wallet.
- [Get Celo Account balance](https://docs.tatum.io/reference/celogetbalance.md):1 credit per API call
Get Celo account balance in ETH. This method does not prints any balance of the ERC20 or ERC721 tokens on the account.
- [Get Celo block by hash](https://docs.tatum.io/reference/celogetblock.md):⚠️ Deprecated: Get Celo Block
GET /v3/celo/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
1 credit per API call
Get Celo block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/celogetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/celo/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
1 credit per API call
Get Celo current block number. This is the number of the latest block in the blockchain.
- [Get Celo Transaction](https://docs.tatum.io/reference/celogettransaction.md):⚠️ Deprecated: Get Celo Transaction
GET /v3/celo/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
2 credits per API call
Get Celo transaction by transaction hash.
- [Get Celo transactions by address](https://docs.tatum.io/reference/celogettransactionbyaddress.md):This endpoint is deprecated. Do not use it.
20 credit per API call
Get Celo transactions by address. This includes incoming and outgoing transactions for the address.
- [Get count of outgoing Celo transactions](https://docs.tatum.io/reference/celogettransactioncount.md):⚠️ Deprecated: Get Celo Transaction Count
GET /v3/celo/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
1 credit per API call
Get a number of outgoing Celo transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/celoweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the Celo node provided by Tatum. To learn more about Celo Web3, visit the Celo developer's guide.
- [Celo](https://docs.tatum.io/reference/rpc-celo.md): Celo is a mobile-first blockchain focused on financial inclusion. Explore its fast, low-cost transactions for dApps and decentralized finance. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-celo-debug_getbadblocks.md): Celo RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-celo-debug_storagerangeat.md): Celo RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-celo-debug_traceblock.md): Celo RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-celo-debug_traceblockbyhash.md): Celo RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-celo-debug_traceblockbynumber.md): Celo RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-celo-debug_tracecall.md): Celo RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-celo-debug_tracetransaction.md): Celo RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-celo-eth_blocknumber.md): Celo RPC - [eth_call](https://docs.tatum.io/reference/rpc-celo-eth_call.md): Celo RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-celo-eth_chainid.md): Celo RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-celo-eth_estimategas.md): Celo RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-celo-eth_feehistory.md): Celo RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-celo-eth_gasprice.md): Celo RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-celo-eth_getbalance.md): Celo RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-celo-eth_getblockbyhash.md): Celo RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-celo-eth_getblockbynumber.md): Celo RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-celo-eth_getblocktransactioncountbyhash.md): Celo RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-celo-eth_getblocktransactioncountbynumber.md): Celo RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-celo-eth_getcode.md): Celo RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-celo-eth_getlogs.md): Celo RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-celo-eth_getproof.md): Celo RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-celo-eth_getstorageat.md): Celo RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-celo-eth_gettransactionbyblockhashandindex.md): Celo RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-celo-eth_gettransactionbyblocknumberandindex.md): Celo RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-celo-eth_gettransactionbyhash.md): Celo RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-celo-eth_gettransactioncount.md): Celo RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-celo-eth_gettransactionreceipt.md): Celo RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-celo-eth_getunclecountbyblockhash.md): Celo RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-celo-eth_getunclecountbyblocknumber.md): Celo RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-celo-eth_maxpriorityfeepergas.md): Celo RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-celo-eth_sendrawtransaction.md): Celo RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-celo-web3_clientversion.md): Celo RPC - [Chiliz](https://docs.tatum.io/reference/rpc-chiliz.md): Discover Chiliz, a blockchain built for sports and entertainment. Power your fan engagement and token-based rewards with fast, secure transactions. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-chiliz-debug_getbadblocks.md): Chiliz RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-chiliz-debug_storagerangeat.md): Chiliz RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-chiliz-debug_traceblock.md): Chiliz RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-chiliz-debug_traceblockbyhash.md): Chiliz RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-chiliz-debug_traceblockbynumber.md): Chiliz RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-chiliz-debug_tracecall.md): Chiliz RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-chiliz-debug_tracetransaction.md): Chiliz RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-chiliz-eth_blocknumber.md): Chiliz RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-chiliz-eth_chainid.md): Chiliz RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-chiliz-eth_estimategas.md): Chiliz RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-chiliz-eth_feehistory.md): Chiliz RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-chiliz-eth_gasprice.md): Chiliz RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-chiliz-eth_getbalance.md): Chiliz RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-chiliz-eth_getblockbyhash.md): Chiliz RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-chiliz-eth_getblockbynumber.md): Chiliz RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-chiliz-eth_getblocktransactioncountbyhash.md): Chiliz RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-chiliz-eth_getblocktransactioncountbynumber.md): Chiliz RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-chiliz-eth_getcode.md): Chiliz RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-chiliz-eth_getlogs.md): Chiliz RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-chiliz-eth_getproof.md): Chiliz RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-chiliz-eth_getstorageat.md): Chiliz RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-chiliz-eth_gettransactionbyblockhashandindex.md): Chiliz RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-chiliz-eth_gettransactionbyblocknumberandindex.md): Chiliz RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-chiliz-eth_gettransactionbyhash.md): Chiliz RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-chiliz-eth_gettransactioncount.md): Chiliz RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-chiliz-eth_gettransactionreceipt.md): Chiliz RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-chiliz-eth_getunclecountbyblockhash.md): Chiliz RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-chiliz-eth_getunclecountbyblocknumber.md): Chiliz RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-chiliz-eth_maxpriorityfeepergas.md): Chiliz RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-chiliz-eth_sendrawtransaction.md): Chiliz RPC - [txpool_content](https://docs.tatum.io/reference/rpc-chiliz-txpool_content.md): Chiliz RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-chiliz-txpool_inspect.md): Chiliz RPC - [txpool_status](https://docs.tatum.io/reference/rpc-chiliz-txpool_status.md): Chiliz RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-chiliz-web3_clientversion.md): Chiliz RPC - [Account](https://docs.tatum.io/reference/rpc-cosmos-account.md): Account returns account details based on address. - [AccountInfo](https://docs.tatum.io/reference/rpc-cosmos-accountinfo.md): AccountInfo queries account info which is common to all account types. - [Accounts](https://docs.tatum.io/reference/rpc-cosmos-accounts.md): Accounts returns all the existing accounts. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [AddressStringToBytes](https://docs.tatum.io/reference/rpc-cosmos-addressbytestobytes.md): AddressStringToBytes converts Address string to bytes - [AddressBytesToString](https://docs.tatum.io/reference/rpc-cosmos-addressbytestostring.md): AddressBytesToString converts Account Address bytes to string - [AllBalances](https://docs.tatum.io/reference/rpc-cosmos-allbalances.md): AllBalances queries the balance of all coins for a single account. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [AllEvidence](https://docs.tatum.io/reference/rpc-cosmos-allevidence.md): AllEvidence queries all evidence. - [Allowance](https://docs.tatum.io/reference/rpc-cosmos-allowance.md): Allowance returns granted allowance to the grantee by the granter. - [AllowancesByGranter](https://docs.tatum.io/reference/rpc-cosmos-allowancebygranter.md): AllowancesByGranter returns all the grants given by an address - [AnnualProvisions](https://docs.tatum.io/reference/rpc-cosmos-annualprovisions.md): AnnualProvisions current minting annual provisions value. - [AppliedPlan](https://docs.tatum.io/reference/rpc-cosmos-appliedplan.md): AppliedPlan queries a previously applied upgrade plan by its name. - [Authority](https://docs.tatum.io/reference/rpc-cosmos-authority.md): Returns the account with authority to conduct upgrades - [AuthParams](https://docs.tatum.io/reference/rpc-cosmos-authparams.md): Params queries all parameters. - [Bech32Prefix](https://docs.tatum.io/reference/rpc-cosmos-bech32prefix.md): Bech32Prefix queries bech32Prefix - [BroadcastTx](https://docs.tatum.io/reference/rpc-cosmos-broadcasttx.md): BroadcastTx broadcast transaction. - [CurrentPlan](https://docs.tatum.io/reference/rpc-cosmos-currentplan.md): CurrentPlan queries the current upgrade plan. - [Delegation](https://docs.tatum.io/reference/rpc-cosmos-delegation.md): Delegation queries delegate info for given validator delegator pair. - [DelegationRewards](https://docs.tatum.io/reference/rpc-cosmos-delegationrewards.md): DelegationRewards queries the total rewards accrued by a delegation. - [DelegationTotalRewards](https://docs.tatum.io/reference/rpc-cosmos-delegationtotalrewards.md): DelegationTotalRewards queries the total rewards accrued by each validator. - [DelegatorDelegations](https://docs.tatum.io/reference/rpc-cosmos-delegatordelegations.md): DelegatorDelegations queries all delegations of a given delegator address. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [DelegatorUnbondingDelegations](https://docs.tatum.io/reference/rpc-cosmos-delegatorunboundingdelegations.md): DelegatorUnbondingDelegations queries all unbonding delegations of a given delegator address. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [DelegatorValidator](https://docs.tatum.io/reference/rpc-cosmos-delegatorvalidator.md): DelegatorValidator queries validator info for given delegator validator pair. - [DelegatorValidators](https://docs.tatum.io/reference/rpc-cosmos-delegatorvalidators.md): DelegatorValidators queries the validators of a delegator. - [DelegatorWithdrawAddress](https://docs.tatum.io/reference/rpc-cosmos-delegatorwithdrawaddress.md): DelegatorWithdrawAddress queries withdraw address of a delegator. - [DenomMetadata](https://docs.tatum.io/reference/rpc-cosmos-denommetadata.md): DenomMetadata queries the client metadata of a given coin denomination. - [DenomsMetadata](https://docs.tatum.io/reference/rpc-cosmos-denomsmetadata.md): DenomsMetadata queries the client metadata for all registered coin denominations. - [Deposit](https://docs.tatum.io/reference/rpc-cosmos-deposit.md): Deposit queries single deposit information based on proposalID, depositor address. - [Deposits](https://docs.tatum.io/reference/rpc-cosmos-deposits.md): Deposits queries all deposits of a single proposal. - [DistributionParams](https://docs.tatum.io/reference/rpc-cosmos-distributionparams.md): Params queries params of the distribution module. - [GetBlockByHeight](https://docs.tatum.io/reference/rpc-cosmos-getblockbyheight.md): GetBlockByHeight queries block for given height. - [GetLatestBlock](https://docs.tatum.io/reference/rpc-cosmos-getlatestblock.md): GetLatestBlock returns the latest block. - [GetLatestValidatorSet](https://docs.tatum.io/reference/rpc-cosmos-getlatestvalidatorset.md): GetLatestValidatorSet queries latest validator-set. - [GetNodeInfo](https://docs.tatum.io/reference/rpc-cosmos-getnodeinfo.md): GetNodeInfo queries the current node info. - [GetSyncing](https://docs.tatum.io/reference/rpc-cosmos-getsyncing.md): GetSyncing queries node syncing. - [GetTx](https://docs.tatum.io/reference/rpc-cosmos-gettx.md): GetTx fetches a tx by hash. - [GetTxsEvent](https://docs.tatum.io/reference/rpc-cosmos-gettxsevent.md): GetTxsEvent fetches txs by event. - [GetValidatorSetByHeight](https://docs.tatum.io/reference/rpc-cosmos-getvalidatorsetbyheigh.md): GetValidatorSetByHeight queries validator-set at a given height. - [GovParams](https://docs.tatum.io/reference/rpc-cosmos-govparams.md): Params queries all parameters of the gov module. - [GranteeGrants](https://docs.tatum.io/reference/rpc-cosmos-granteegrants.md): GranteeGrants returns a list of `GrantAuthorization` by grantee. - [GranterGrants](https://docs.tatum.io/reference/rpc-cosmos-grantergrants.md): GranterGrants returns list of `GrantAuthorization`, granted by granter. - [Grants](https://docs.tatum.io/reference/rpc-cosmos-grants.md): Returns list of `Authorization`, granted to the grantee by the granter. - [HistoricalInfo](https://docs.tatum.io/reference/rpc-cosmos-historicalinfo.md): HistoricalInfo queries the historical info for given height. - [Inflation](https://docs.tatum.io/reference/rpc-cosmos-inflation.md): Inflation returns the current minting inflation value. - [MintParams](https://docs.tatum.io/reference/rpc-cosmos-mintparams.md): Params returns the total set of minting parameters. - [ModuleAccounts](https://docs.tatum.io/reference/rpc-cosmos-moduleaccounts.md): ModuleAccounts returns all the existing module accounts. - [ModuleAccountByName](https://docs.tatum.io/reference/rpc-cosmos-moduleaccountsbyname.md): ModuleAccountByName returns the module account info by module name - [ModuleVersions](https://docs.tatum.io/reference/rpc-cosmos-moduleversions.md): ModuleVersions queries the list of module versions from state. - [Params](https://docs.tatum.io/reference/rpc-cosmos-params.md): Params queries a specific parameter of a module, given its subspace and key. - [Pool](https://docs.tatum.io/reference/rpc-cosmos-pool.md): Pool queries the pool info. - [Proposal](https://docs.tatum.io/reference/rpc-cosmos-proposal.md): Proposal queries proposal details based on ProposalID. - [Proposals](https://docs.tatum.io/reference/rpc-cosmos-proposals.md): Proposals queries all proposals based on given status. - [Redelegations](https://docs.tatum.io/reference/rpc-cosmos-redelegations.md): When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [SigningInfo](https://docs.tatum.io/reference/rpc-cosmos-signinginfo.md): SigningInfo queries the signing info of given cons address - [SigningInfos](https://docs.tatum.io/reference/rpc-cosmos-signinginfos.md): SigningInfos queries signing info of all validators - [SlashingParams](https://docs.tatum.io/reference/rpc-cosmos-slashingparams.md): Params queries the parameters of slashing module - [StakingDelegatorValidators](https://docs.tatum.io/reference/rpc-cosmos-stakingdelegatorvalidators.md): DelegatorValidators queries all validators info for given delegator address. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [StakingParams](https://docs.tatum.io/reference/rpc-cosmos-stakingparams.md): Parameters queries the staking parameters. - [Subspaces](https://docs.tatum.io/reference/rpc-cosmos-subspaces.md): Subspaces queries for all registered subspaces and all keys for a subspace. - [TallyResult](https://docs.tatum.io/reference/rpc-cosmos-tallyresult.md): TallyResult queries the tally of a proposal vote. - [UnbondingDelegation](https://docs.tatum.io/reference/rpc-cosmos-unbondingdelegation.md): UnbondingDelegation queries unbonding info for given validator delegator pair. - [UpgradedConsensusState](https://docs.tatum.io/reference/rpc-cosmos-upgradedconsensusstate.md): UpgradedConsensusState queries the consensus state that will serve as a trusted kernel for the next version of this chain. It will only be stored at the last height of this chain. UpgradedConsensusState RPC not supported with legacy querier This rpc is deprecated now that IBC has its own replacement (https://github.com/v3/blockchain/node/kadena-mainnet/{xApiKey}/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54) - [Validator](https://docs.tatum.io/reference/rpc-cosmos-validator.md): Validator queries validator info for given validator address. - [ValidatorCommission](https://docs.tatum.io/reference/rpc-cosmos-validatorcommission.md): ValidatorCommission queries accumulated commission for a validator. - [ValidatorDelegations](https://docs.tatum.io/reference/rpc-cosmos-validatordelegations.md): ValidatorDelegations queries delegate info for given validator. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [ValidatorDistributionInfo](https://docs.tatum.io/reference/rpc-cosmos-validatordistributioninfo.md): ValidatorDistributionInfo queries validator commission and self-delegation rewards for validator - [ValidatorOutstandingRewards](https://docs.tatum.io/reference/rpc-cosmos-validatoroutstandingrewards.md): ValidatorOutstandingRewards queries rewards of a validator address. - [Validators](https://docs.tatum.io/reference/rpc-cosmos-validators.md): Validators queries all validators that match the given status. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [ValidatorSlashes](https://docs.tatum.io/reference/rpc-cosmos-validatorslashes.md): ValidatorSlashes queries slash events of a validator. - [ValidatorUnbondingDelegations](https://docs.tatum.io/reference/rpc-cosmos-validatorunbondingdelegations.md): ValidatorUnbondingDelegations queries unbonding delegations of a validator. When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set. - [Vote](https://docs.tatum.io/reference/rpc-cosmos-vote.md): Vote queries voted information based on proposalID, voterAddr. Due to how we handle state, this query would error for proposals that has already been finished. - [Votes](https://docs.tatum.io/reference/rpc-cosmos-votes.md): Votes queries votes of a given proposal. - [BankParams](https://docs.tatum.io/reference/rpc-cosmosbankparams.md): Params queries the parameters of x/bank module. - [Cosmos - gRPC](https://docs.tatum.io/reference/cosmos-grpc.md): Cosmos gRPC is a high-performance, strongly-typed interface for interacting with Cosmos SDK chains using Protocol Buffers and HTTP/2. This guide shows how to connect to Tatum’s Cosmos gRPC endpoint, authenticate with an API key, set up a Node.js environment with required .proto files, and execute common queries like retrieving balances or staking data. - [Cosmos](https://docs.tatum.io/reference/rpc-cosmos.md): Discover Cosmos, a blockchain designed for interoperability. Build cross-chain decentralized applications using its RPC gateway. - [Invoke a method in a smart contract on Cronos](https://docs.tatum.io/reference/cronosblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Cronos.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send CRO or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/cronosblockchaintransfer.md):2 credits per API call
Send CRO or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending CRO, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Cronos transaction](https://docs.tatum.io/reference/cronosbroadcast.md):2 credits per API call
Broadcast signed transaction to Cronos blockchain.
- [Generate Cronos account address from Extended public key](https://docs.tatum.io/reference/cronosgenerateaddress.md):Generates an Cronos account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Cronos private key](https://docs.tatum.io/reference/cronosgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Cronos wallet](https://docs.tatum.io/reference/cronosgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Cronos wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Cronos wallet.
- [Get the CRO balance of an Cronos account](https://docs.tatum.io/reference/cronosgetbalance.md):⚠️ Deprecated: Get Cronos Balance
GET /v3/cronos/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of CRO of an Cronos account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Cronos block by hash](https://docs.tatum.io/reference/cronosgetblock.md):⚠️ Deprecated: Get Cronos Block
GET /v3/cronos/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Cronos block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/cronosgetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/cronos/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Cronos block number. This is the number of the latest block in the blockchain.
- [Get Cronos Transaction](https://docs.tatum.io/reference/cronosgettransaction.md):⚠️ Deprecated: Get Cronos Transaction
GET /v3/cronos/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Cronos transaction by transaction hash.
- [Get count of outgoing Cronos transactions](https://docs.tatum.io/reference/cronosgettransactioncount.md):⚠️ Deprecated: Get Cronos Transaction Count
GET /v3/cronos/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Cronos transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/cronosweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Cronos node provided by Tatum. To learn more about Cronos Web3, visit the Cronos developers' guide.
- [Cronos](https://docs.tatum.io/reference/rpc-cronos.md): Explore Cronos, an EVM-compatible blockchain for DeFi and NFTs. Benefit from low-cost transactions and cross-chain interoperability. - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-cronos-debug_traceblockbyhash.md): Cronos RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-cronos-debug_traceblockbynumber.md): Cronos RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-cronos-debug_tracetransaction.md): Cronos RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-cronos-eth_blocknumber.md): Cronos RPC - [eth_call](https://docs.tatum.io/reference/rpc-cronos-eth_call.md): Cronos RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-cronos-eth_chainid.md): Cronos RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-cronos-eth_estimategas.md): Cronos RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-cronos-eth_feehistory.md): Cronos RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-cronos-eth_gasprice.md): Cronos RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-cronos-eth_getbalance.md): Cronos RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-cronos-eth_getblockbyhash.md): Cronos RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-cronos-eth_getblockbynumber.md): Cronos RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-cronos-eth_getblocktransactioncountbyhash.md): Cronos RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-cronos-eth_getblocktransactioncountbynumber.md): Cronos RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-cronos-eth_getcode.md): Cronos RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-cronos-eth_getlogs.md): Cronos RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-cronos-eth_getproof.md): Cronos RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-cronos-eth_getstorageat.md): Cronos RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-cronos-eth_gettransactionbyblockhashandindex.md): Cronos RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-cronos-eth_gettransactionbyblocknumberandindex.md): Cronos RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-cronos-eth_gettransactionbyhash.md): Cronos RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-cronos-eth_gettransactioncount.md): Cronos RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-cronos-eth_gettransactionreceipt.md): Cronos RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-cronos-eth_getunclecountbyblockhash.md): Cronos RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-cronos-eth_getunclecountbyblocknumber.md): Cronos RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-cronos-eth_maxpriorityfeepergas.md): Cronos RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-cronos-eth_sendrawtransaction.md): Cronos RPC - [txpool_content](https://docs.tatum.io/reference/rpc-cronos-txpool_content.md): Cronos RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-cronos-txpool_inspect.md): Cronos RPC - [txpool_status](https://docs.tatum.io/reference/rpc-cronos-txpool_status.md): Cronos RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-cronos-web3_clientversion.md): Cronos RPC - [Broadcast signed Dogecoin transaction](https://docs.tatum.io/reference/dogebroadcast.md):Broadcast signed transaction to Dogecoin blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Dogecoin deposit address from Extended public key](https://docs.tatum.io/reference/dogegenerateaddress.md):Generate Dogecoin deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Dogecoin private key](https://docs.tatum.io/reference/dogegenerateaddressprivatekey.md):Generate private key for address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Dogecoin wallet](https://docs.tatum.io/reference/dogegeneratewallet.md):Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Dogecoin wallet with derivation path m'/44'/3'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/litecoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Dogecoin wallet.
- [Get the balance of a Dogecoin address](https://docs.tatum.io/reference/dogegetbalanceofaddress.md):⚠️ Deprecated: Get Dogecoin Address Balance
GET /v3/dogecoin/address/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet the balance of a Dogecoin address.
5 credits per API call
Get the balance of a Dogecoin address.
⚠️ Deprecated: Get Dogecoin Address Balance Batch
GET /v3/dogecoin/address/balance/batchis deprecated.Use
GET /v4/data/blockchains/balance/batchGet the balance of multiple Dogecoin addresses.
5 credit per address for each API call
Get the balance of multiple Dogecoin addresses.
- [Get Dogecoin Block by hash or height](https://docs.tatum.io/reference/dogegetblock.md):Get Dogecoin Block detail by block hash or height.
- [Get Dogecoin Blockchain Information](https://docs.tatum.io/reference/dogegetblockchaininfo.md):Get Dogecoin Blockchain Information. Obtain basic info like testnet / mainnet version of the chain, current block number and it's hash.
- [Get Dogecoin Block hash](https://docs.tatum.io/reference/dogegetblockhash.md):⚠️ Deprecated: Get Block Hash
GET /v3/dogecoin/block/hash/{i}is deprecated.Use
GET /v4/data/blockchains/block/hashFetch the hash of a block from the blockchain.
Get Dogecoin Block hash. Returns hash of the block to get the block detail.
- [Get Mempool Transactions](https://docs.tatum.io/reference/dogegetmempool.md):⚠️ Deprecated: Get Mempool
GET /v3/dogecoin/mempoolis deprecated.Use
GET /v4/data/blockchains/mempoolGet mempool (unconfirmed) transaction hashes for a UTXO chain.
Get Dogecoin Transaction ids in the mempool.
- [Get Dogecoin Transaction by hash](https://docs.tatum.io/reference/dogegetrawtransaction.md):Get Dogecoin Transaction detail by transaction hash.
- [Get Dogecoin Transactions by address](https://docs.tatum.io/reference/dogegettxbyaddress.md):Get Dogecoin Transaction by address.
5 credit per address for each API call
Retrieve transactions for multiple Dogecoin addresses in a batch.
- [Get information about a transaction output (UTXO) in a Dogecoin transaction](https://docs.tatum.io/reference/dogegetutxo.md):⚠️ Deprecated: Get UTXO
GET /v3/dogecoin/utxo/{hash}/{index}is deprecated.Use
GET /v4/data/blockchains/utxo/infoGet information about a transaction output (UTXO) by transaction hash and output index.
1 credit per API call
Get information about a transaction output in a transaction and check whether this output is a UTXO or has been spent.
"UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of DOGE that remains at a Dogecoin address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information about the UTXO, see the Bitcoin user documentation.
404 response code.2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based JSON RPC driver to connect directly to the node provided by Tatum.
- [Send DOGE to Dogecoin addresses](https://docs.tatum.io/reference/dogetransferblockchain.md):2 credits per API call
Send DOGE to blockchain addresses.
Dogecoin transactions are based on UTXOs. "UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of DOGE that remains at a Bitcoin Cash address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information the UTXO, see the Bitcoin user documentation. To check UTXOs in a transaction, see the API for getting information about a transaction output (UTXO) in a Dogecoin transaction
You build a DOGE transaction by sending DOGE from UTXOs. Each UTXO is included in the transaction.
When an UTXO is entered into a transaction, the whole UTXO amount is included and must be spent. For example, address A receives two transactions, T1 with 1 DOGE and T2 with 2 DOGE. A transaction that consumes the UTXOs from both T1 and T2 will have an available amount of 3 DOGE to spend:1 DOGE (from T1) + 2 DOGE (from T2) = 3 DOGE (to spend in total)
You can send the assets to one or multiple recipients in one transaction. If you send the assets to multiple addresses, each address must have its own amount to receive.
Paying the gas fee and receiving the change
When the amount that the recipients should receive is lower than the amount from the UTXOs, the difference between these two amounts is by default used as the gas fee for the transaction. Because this amount may be considerable and you may not want to spend it all on the gas fee, you can explicitly specify the fee amount and the blockchain address where any extra funds remaining after covering the fee will be sent (the fee and changeAddress parameters in the request body, correspondingly).
Signing a transaction
When sending DOGE, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Dogecoin](https://docs.tatum.io/reference/rpc-dogecoin.md): Discover Dogecoin, a fun and fast blockchain designed for low-cost peer-to-peer transactions. Build decentralized apps with its easy-to-use RPC gateway - [createrawtransaction](https://docs.tatum.io/reference/rpc-dogecoin-createrawtransaction.md): Dogecoin RPC - [decoderawtransaction](https://docs.tatum.io/reference/rpc-dogecoin-decoderawtransaction.md): Dogecoin RPC - [decodescript](https://docs.tatum.io/reference/rpc-dogecoin-decodescript.md): Dogecoin RPC - [estimatesmartfee](https://docs.tatum.io/reference/rpc-dogecoin-estimatesmartfee.md): Dogecoin RPC - [getbestblockhash](https://docs.tatum.io/reference/rpc-dogecoin-getbestblockhash.md): Dogecoin RPC - [getblock](https://docs.tatum.io/reference/rpc-dogecoin-getblock.md): Dogecoin RPC - [getblockchaininfo](https://docs.tatum.io/reference/rpc-dogecoin-getblockchaininfo.md): Dogecoin RPC - [getblockcount](https://docs.tatum.io/reference/rpc-dogecoin-getblockcount.md): Dogecoin RPC - [getblockhash](https://docs.tatum.io/reference/rpc-dogecoin-getblockhash.md): Dogecoin RPC - [getblockheader](https://docs.tatum.io/reference/rpc-dogecoin-getblockheader.md): Dogecoin RPC - [getchaintips](https://docs.tatum.io/reference/rpc-dogecoin-getchaintips.md): Dogecoin RPC - [getdifficulty](https://docs.tatum.io/reference/rpc-dogecoin-getdifficulty.md): Dogecoin RPC - [getmempoolancestors](https://docs.tatum.io/reference/rpc-dogecoin-getmempoolancestors.md): Dogecoin RPC - [getmempooldescendants](https://docs.tatum.io/reference/rpc-dogecoin-getmempooldescendants.md): Dogecoin RPC - [getmempoolentry](https://docs.tatum.io/reference/rpc-dogecoin-getmempoolentry.md): Dogecoin RPC - [getmempoolinfo](https://docs.tatum.io/reference/rpc-dogecoin-getmempoolinfo.md): Dogecoin RPC - [getrawmempool](https://docs.tatum.io/reference/rpc-dogecoin-getrawmempool.md): Dogecoin RPC - [getrawtransaction](https://docs.tatum.io/reference/rpc-dogecoin-getrawtransaction.md): Dogecoin RPC - [gettxout](https://docs.tatum.io/reference/rpc-dogecoin-gettxout.md): Dogecoin RPC - [gettxoutproof](https://docs.tatum.io/reference/rpc-dogecoin-gettxoutproof.md): Dogecoin RPC - [sendrawtransaction](https://docs.tatum.io/reference/rpc-dogecoin-sendrawtransaction.md): Dogecoin RPC - [validateaddress](https://docs.tatum.io/reference/rpc-dogecoin-validateaddress.md): Dogecoin RPC - [verifymessage](https://docs.tatum.io/reference/rpc-dogecoin-verifymessage.md): Dogecoin RPC - [verifytxoutproof](https://docs.tatum.io/reference/rpc-dogecoin-verifytxoutproof.md): Dogecoin RPC - [Eos](https://docs.tatum.io/reference/rpc-eos.md): Explore EOS, a blockchain designed for high-performance decentralized applications. Build scalable dApps with its fast finality and low fees. - [get_abi](https://docs.tatum.io/reference/rpc-eos-get_abi.md): Eos RPC - [get_account](https://docs.tatum.io/reference/rpc-eos-get_account.md): Eos RPC - [get_accounts_by_authorizers](https://docs.tatum.io/reference/rpc-eos-get_accounts_by_authorizers.md): Eos RPC - [get_activated_protocol_features](https://docs.tatum.io/reference/rpc-eos-get_activated_protocol_features.md): Eos RPC - [get_block_info](https://docs.tatum.io/reference/rpc-eos-get_block_info.md): Eos RPC - [get_block](https://docs.tatum.io/reference/rpc-eos-get_block.md): Eos RPC - [get_code](https://docs.tatum.io/reference/rpc-eos-get_code.md): Eos RPC - [get_currency_balance](https://docs.tatum.io/reference/rpc-eos-get_currency_balance.md): Eos RPC - [get_currency_stats](https://docs.tatum.io/reference/rpc-eos-get_currency_stats.md): Eos RPC - [get_info](https://docs.tatum.io/reference/rpc-eos-get_info.md): Eos RPC - [get_producers](https://docs.tatum.io/reference/rpc-eos-get_producers.md): Eos RPC - [get_raw_abi](https://docs.tatum.io/reference/rpc-eos-get_raw_abi.md): Eos RPC - [get_raw_code_and_abi](https://docs.tatum.io/reference/rpc-eos-get_raw_code_and_abi.md): Eos RPC - [get_required_keys](https://docs.tatum.io/reference/rpc-eos-get_required_keys.md): Eos RPC - [get_table_by_scope](https://docs.tatum.io/reference/rpc-eos-get_table_by_scope.md): Eos RPC - [get_table_rows](https://docs.tatum.io/reference/rpc-eos-get_table_rows.md): Eos RPC - [push_transaction](https://docs.tatum.io/reference/rpc-eos-push_transaction.md): Eos RPC - [push_transactions](https://docs.tatum.io/reference/rpc-eos-push_transactions.md): Eos RPC - [send_transaction](https://docs.tatum.io/reference/rpc-eos-send_transaction.md): Eos RPC - [trace-api-get_block](https://docs.tatum.io/reference/rpc-eos-trace-api-get_block.md): Eos RPC - [Ethereum Classic](https://docs.tatum.io/reference/rpc-ethereum-classic.md): Ethereum Classic is a decentralized blockchain preserving original Ethereum chain. Access Tatum RPC guide to connect, query, and manage smart contracts with proof-of-work security and EVM support for dApp development. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_getbadblocks.md): Ethereum Classic RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_storagerangeat.md): Ethereum Classic RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_traceblock.md): Ethereum Classic RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_traceblockbyhash.md): Ethereum Classic RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_traceblockbynumber.md): Ethereum Classic RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_tracecall.md): Ethereum Classic RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-ethereum-classic-debug_tracetransaction.md): Ethereum Classic RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_blocknumber.md): Ethereum Classic RPC - [eth_call](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_call.md): Ethereum Classic RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_chainid.md): Ethereum Classic RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_estimategas.md): Ethereum Classic RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_feehistory.md): Ethereum Classic RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gasprice.md): Ethereum Classic RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getbalance.md): Ethereum Classic RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getblockbyhash.md): Ethereum Classic RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getblockbynumber.md): Ethereum Classic RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getblocktransactioncountbyhash.md): Ethereum Classic RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getblocktransactioncountbynumber.md): Ethereum Classic RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getcode.md): Ethereum Classic RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getlogs.md): Ethereum Classic RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getproof.md): Ethereum Classic RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getstorageat.md): Ethereum Classic RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gettransactionbyblockhashandindex.md): Ethereum Classic RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gettransactionbyblocknumberandindex.md): Ethereum Classic RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gettransactionbyhash.md): Ethereum Classic RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gettransactioncount.md): Ethereum Classic RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_gettransactionreceipt.md): Ethereum Classic RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getunclecountbyblockhash.md): Ethereum Classic RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_getunclecountbyblocknumber.md): Ethereum Classic RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_maxpriorityfeepergas.md): Ethereum Classic RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-ethereum-classic-eth_sendrawtransaction.md): Ethereum Classic RPC - [txpool_content](https://docs.tatum.io/reference/rpc-ethereum-classic-txpool_content.md): Ethereum Classic RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-ethereum-classic-txpool_inspect.md): Ethereum Classic RPC - [txpool_status](https://docs.tatum.io/reference/rpc-ethereum-classic-txpool_status.md): Ethereum Classic RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-ethereum-classic-web3_clientversion.md): Ethereum Classic RPC - [Subscribe to beacon node events](https://docs.tatum.io/reference/rpc-ethereum-eventstream.md): Provides endpoint to subscribe to beacon node Server-Sent-Events stream. Consumers should use [eventsource](https://html.spec.whatwg.org/multipage/server-sent-events.html#the-eventsource-interface) implementation to listen on those events. Servers _may_ send SSE comments beginning with `:` for any purpose, including to keep the event stream connection alive in the presence of proxy servers. - [Get aggregated attestation](https://docs.tatum.io/reference/rpc-ethereum-getaggregatedattestation.md): Aggregates all attestations matching given attestation data root and slot. A 503 error must be returned if the block identified by the response `beacon_block_root` is optimistic (i.e. the aggregated attestation attests to a block that has not been fully verified by an execution engine). A 404 error must be returned if no attestation is available for the requested `attestation_data_root`. - [Get aggregated attestation](https://docs.tatum.io/reference/rpc-ethereum-getaggregatedattestationv2.md): Aggregates all attestations matching given attestation data root, slot and committee index. A 503 error must be returned if the block identified by the response `beacon_block_root` is optimistic (i.e. the aggregated attestation attests to a block that has not been fully verified by an execution engine). A 404 error must be returned if no attestation is available for the requested `attestation_data_root`. - [Get attestations rewards](https://docs.tatum.io/reference/rpc-ethereum-getattestationsrewards.md): Retrieve attestation reward info for validators specified by array of public keys or validator index. If no array is provided, return reward info for every validator. - [Get attester duties](https://docs.tatum.io/reference/rpc-ethereum-getattesterduties.md): Requests the beacon node to provide a set of attestation duties, which should be performed by validators, for a particular epoch. Duties should only need to be checked once per epoch, however a chain reorganization (of > MIN_SEED_LOOKAHEAD epochs) could occur, resulting in a change of duties. For full safety, you should monitor head events and confirm the dependent root in this response matches: - event.previous_duty_dependent_root when `compute_epoch_at_slot(event.slot) == epoch` - event.current_duty_dependent_root when `compute_epoch_at_slot(event.slot) + 1 == epoch` - event.block otherwise The dependent_root value is `get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch - 1) - 1)` or the genesis block root in the case of underflow. - [Get blinded block](https://docs.tatum.io/reference/rpc-ethereum-getblindedblock.md): Retrieves blinded block for given block ID. Depending on `Accept` header it can be returned either as JSON or as bytes serialized by SSZ - [Get blob sidecars](https://docs.tatum.io/reference/rpc-ethereum-getblobsidecars.md): Retrieves blob sidecars for a given block id. Depending on `Accept` header it can be returned either as json or as bytes serialized by SSZ. If the `indices` parameter is specified, only the blob sidecars with the specified indices will be returned. There are no guarantees for the returned blob sidecars in terms of ordering. - [Get block attestations](https://docs.tatum.io/reference/rpc-ethereum-getblockattestations.md): Retrieves attestation included in requested block. - [Get block attestations](https://docs.tatum.io/reference/rpc-ethereum-getblockattestationsv2.md): Retrieves attestation included in requested block. - [Get block header](https://docs.tatum.io/reference/rpc-ethereum-getblockheader.md): Retrieves block header for given block id. - [Get block headers](https://docs.tatum.io/reference/rpc-ethereum-getblockheaders.md): Retrieves block headers matching given query. By default it will fetch current head slot blocks. - [Get block rewards](https://docs.tatum.io/reference/rpc-ethereum-getblockrewards.md): Retrieve block reward info for a single block. The rewards value is the sum of values of the proposer rewards from attestations, sync committees and slashings included in the proposal. - [Get block root](https://docs.tatum.io/reference/rpc-ethereum-getblockroot.md): Retrieves hashTreeRoot of BeaconBlock/BeaconBlockHeader - [Get block](https://docs.tatum.io/reference/rpc-ethereum-getblockv2.md): Retrieves block details for given block id. Depending on `Accept` header it can be returned either as json or as bytes serialized by SSZ - [Get fork choice leaves](https://docs.tatum.io/reference/rpc-ethereum-getdebugchainheadsv2.md): Retrieves all possible chain heads (leaves of fork choice tree). - [Get fork choice array](https://docs.tatum.io/reference/rpc-ethereum-getdebugforkchoice.md): Retrieves all current fork choice context. - [Get deposit contract address.](https://docs.tatum.io/reference/rpc-ethereum-getdepositcontract.md): Retrieve Eth1 deposit contract address and chain ID. - [Get Deposit Tree Snapshot](https://docs.tatum.io/reference/rpc-ethereum-getdepositsnapshot.md): Retrieve [EIP-4881](https://eips.ethereum.org/EIPS/eip-4881) Deposit Tree Snapshot. Depending on `Accept` header it can be returned either as json or as bytes serialized by SSZ - [Get all committees for a state.](https://docs.tatum.io/reference/rpc-ethereum-getepochcommittees.md): Retrieves the committees for the given state. - [Get sync committees for a state.](https://docs.tatum.io/reference/rpc-ethereum-getepochsynccommittees.md): Retrieves the current sync committee for the given state. Also returns the subcommittee assignments. - [Get scheduled upcoming forks.](https://docs.tatum.io/reference/rpc-ethereum-getforkschedule.md): Retrieve all forks, past present and future, of which this node is aware. - [Retrieve details of the chain's genesis.](https://docs.tatum.io/reference/rpc-ethereum-getgenesis.md): Retrieve details of the chain's genesis which can be used to identify chain. - [Get health check](https://docs.tatum.io/reference/rpc-ethereum-gethealth.md): Returns node health status in http status codes. Useful for load balancers. - [Get `LightClientBootstrap` structure for a requested block root](https://docs.tatum.io/reference/rpc-ethereum-getlightclientbootstrap.md): Requests the [`LightClientBootstrap`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/sync-protocol.md#lightclientbootstrap) structure corresponding to a given post-Altair beacon block root. Depending on the `Accept` header it can be returned either as JSON or SSZ-serialized bytes. Servers SHOULD provide results as defined in [`create_light_client_bootstrap`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/full-node.md#create_light_client_bootstrap). To fulfill a request, the requested block's post state needs to be known. - [Get the latest known `LightClientFinalityUpdate`](https://docs.tatum.io/reference/rpc-ethereum-getlightclientfinalityupdate.md): Requests the latest [`LightClientFinalityUpdate`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/sync-protocol.md#lightclientfinalityupdate) known by the server. Depending on the `Accept` header it can be returned either as JSON or SSZ-serialized bytes. Servers SHOULD provide results as defined in [`create_light_client_finality_update`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/full-node.md#create_light_client_finality_update). - [Get the latest known `LightClientOptimisticUpdate`](https://docs.tatum.io/reference/rpc-ethereum-getlightclientoptimisticupdate.md): Requests the latest [`LightClientOptimisticUpdate`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/sync-protocol.md#lightclientoptimisticupdate) known by the server. Depending on the `Accept` header it can be returned either as JSON or SSZ-serialized bytes. Servers SHOULD provide results as defined in [`create_light_client_optimistic_update`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/full-node.md#create_light_client_optimistic_update). - [Get `LightClientUpdate` instances in a requested sync committee period range](https://docs.tatum.io/reference/rpc-ethereum-getlightclientupdatesbyrange.md): Requests the [`LightClientUpdate`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/sync-protocol.md#lightclientupdate) instances in the sync committee period range `[start_period, start_period + count)`, leading up to the current head sync committee period as selected by fork choice. Depending on the `Accept` header they can be returned either as JSON or SSZ-serialized bytes. Servers SHOULD provide results as defined in [`create_light_client_update`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/full-node.md#create_light_client_update). They MUST respond with at least the earliest known result within the requested range, and MUST send results in consecutive order (by period). The response MUST NOT contain more than [`min(MAX_REQUEST_LIGHT_CLIENT_UPDATES, count)`](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/light-client/p2p-interface.md#configuration) results. - [Indicates if a validator has been observed on the network](https://docs.tatum.io/reference/rpc-ethereum-getliveness.md): Requests the beacon node to indicate if a validator has been observed to be live in a given epoch. The beacon node might detect liveness by observing messages from the validator on the network, in the beacon chain, from its API or from any other source. A beacon node SHOULD support the current and previous epoch, however it MAY support earlier epoch. It is important to note that the values returned by the beacon node are not canonical; they are best-effort and based upon a subjective view of the network. A beacon node that was recently started or suffered a network partition may indicate that a validator is not live when it actually is. - [Get node network identity](https://docs.tatum.io/reference/rpc-ethereum-getnetworkidentity.md): Retrieves data about the node's network presence - [Get the withdrawals that are to be included for the block built on the specified state.](https://docs.tatum.io/reference/rpc-ethereum-getnextwithdrawals.md): Get the withdrawals computed from the specified state, that will be included in the block that gets built on the specified state. - [Get version string of the running beacon node.](https://docs.tatum.io/reference/rpc-ethereum-getnodeversion.md): Requests that the beacon node identify information about its implementation in a format similar to a [HTTP User-Agent](https://tools.ietf.org/html/rfc7231#section-5.5.3) field. - [Get peer](https://docs.tatum.io/reference/rpc-ethereum-getpeer.md): Retrieves data about the given peer - [Get peer count](https://docs.tatum.io/reference/rpc-ethereum-getpeercount.md): Retrieves number of known peers. - [Get node network peers](https://docs.tatum.io/reference/rpc-ethereum-getpeers.md): Retrieves data about the node's network peers. By default this returns all peers. Multiple query params are combined using AND conditions - [Get State Pending Deposits](https://docs.tatum.io/reference/rpc-ethereum-getpendingdeposits.md): Returns pending deposits for state with given 'stateId'. Should return 400 if the state retrieved is prior to Electra. - [Get State Pending Partial Withdrawals](https://docs.tatum.io/reference/rpc-ethereum-getpendingpartialwithdrawals.md): Returns pending partial withdrawals for state with given 'stateId'. Should return 400 if the state retrieved is prior to Electra. - [Get Attestations from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolattestations.md): Retrieves attestations known by the node but not necessarily incorporated into any block - [Get attestations from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolattestationsv2.md): Retrieves attestations known by the node but not necessarily incorporated into any block - [Get AttesterSlashings from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolattesterslashings.md): Retrieves attester slashings known by the node but not necessarily incorporated into any block - [Get attester slashings from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolattesterslashingsv2.md): Retrieves attester slashings known by the node but not necessarily incorporated into any block - [Get SignedBLSToExecutionChange from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolblstoexecutionchanges.md): Retrieves BLS to execution changes known by the node but not necessarily incorporated into any block - [Get ProposerSlashings from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolproposerslashings.md): Retrieves proposer slashings known by the node but not necessarily incorporated into any block - [Get SignedVoluntaryExit from operations pool](https://docs.tatum.io/reference/rpc-ethereum-getpoolvoluntaryexits.md): Retrieves voluntary exits known by the node but not necessarily incorporated into any block - [Get block proposers duties](https://docs.tatum.io/reference/rpc-ethereum-getproposerduties.md): Request beacon node to provide all validators that are scheduled to propose a block in the given epoch. Duties should only need to be checked once per epoch, however a chain reorganization could occur that results in a change of duties. For full safety, you should monitor head events and confirm the dependent root in this response matches: - event.current_duty_dependent_root when `compute_epoch_at_slot(event.slot) == epoch` - event.block otherwise The dependent_root value is `get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch) - 1)` or the genesis block root in the case of underflow. - [Get spec params.](https://docs.tatum.io/reference/rpc-ethereum-getspec.md): Retrieve specification configuration used on this node. The configuration should include: - Constants for all hard forks known by the beacon node, for example the [phase 0](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/phase0/beacon-chain.md#constants) and [altair](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/altair/beacon-chain.md#constants) values - Presets for all hard forks supplied to the beacon node, for example the [phase 0](https://github.com/ethereum/consensus-specs/blob/v1.3.0/presets/mainnet/phase0.yaml) and [altair](https://github.com/ethereum/consensus-specs/blob/v1.3.0/presets/mainnet/altair.yaml) values - Configuration for the beacon node, for example the [mainnet](https://github.com/ethereum/consensus-specs/blob/v1.3.0/configs/mainnet.yaml) values Values are returned with following format: - any value starting with 0x in the spec is returned as a hex string - numeric values are returned as a quoted integer - [Get state finality checkpoints](https://docs.tatum.io/reference/rpc-ethereum-getstatefinalitycheckpoints.md): Returns finality checkpoints for state with given 'stateId'. In case finality is not yet achieved, checkpoint should return epoch 0 and ZERO_HASH as root. - [Get Fork object for requested state](https://docs.tatum.io/reference/rpc-ethereum-getstatefork.md): Returns [Fork](https://github.com/ethereum/consensus-specs/blob/v1.3.0/specs/phase0/beacon-chain.md#fork) object for state with given 'stateId'. - [Get the RANDAO mix for some epoch in a specified state.](https://docs.tatum.io/reference/rpc-ethereum-getstaterandao.md): Fetch the RANDAO mix for the requested epoch from the state identified by `state_id`. If an epoch is not specified then the RANDAO mix for the state's current epoch will be returned. By adjusting the `state_id` parameter you can query for any historic value of the RANDAO mix. Ordinarily states from the same epoch will mutate the RANDAO mix for that epoch as blocks are applied. - [Get state SSZ HashTreeRoot](https://docs.tatum.io/reference/rpc-ethereum-getstateroot.md): Calculates HashTreeRoot for state with given 'stateId'. If stateId is root, same value will be returned. - [Get full BeaconState object](https://docs.tatum.io/reference/rpc-ethereum-getstatev2.md): Returns full BeaconState object for given stateId. Depending on `Accept` header it can be returned either as json or as bytes serialized by SSZ - [Get validator from state by id](https://docs.tatum.io/reference/rpc-ethereum-getstatevalidator.md): Returns validator specified by state and id or public key along with status and balance. - [Get validator balances from state](https://docs.tatum.io/reference/rpc-ethereum-getstatevalidatorbalances.md): Returns filterable list of validators balances. Balances will be returned for all indices or public key that match known validators. If an index or public key does not match any known validator, no balance will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering; the index is returned for each balance, and can be used to confirm for which inputs a response has been returned. - [Get validators from state](https://docs.tatum.io/reference/rpc-ethereum-getstatevalidators.md): Returns filterable list of validators with their balance, status and index. Information will be returned for all indices or public key that match known validators. If an index or public key does not match any known validator, no information will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering; both the index and public key are returned for each validator, and can be used to confirm for which inputs a response has been returned. - [Get sync committee duties](https://docs.tatum.io/reference/rpc-ethereum-getsynccommitteeduties.md): Requests the beacon node to provide a set of sync committee duties for a particular epoch. - [Get sync committee rewards](https://docs.tatum.io/reference/rpc-ethereum-getsynccommitteerewards.md): Retrieves rewards info for sync committee members specified by array of public keys or validator index. If no array is provided, return reward info for every committee member. - [Get node syncing status](https://docs.tatum.io/reference/rpc-ethereum-getsyncingstatus.md): Requests the beacon node to describe if it's currently syncing or not, and if it is, what block it is up to. - [Get validator balances from state](https://docs.tatum.io/reference/rpc-ethereum-poststatevalidatorbalances.md): Returns filterable list of validators balances. Balances will be returned for all indices or public keys that match known validators. If an index or public key does not match any known validator, no balance will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering; the index is returned for each balance, and can be used to confirm for which inputs a response has been returned. - [Get validator identities from state](https://docs.tatum.io/reference/rpc-ethereum-poststatevalidatoridentities.md): Returns filterable list of validators identities. Identities will be returned for all indices or public keys that match known validators. If an index or public key does not match any known validator, no identity will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering. Depending on `Accept` header data can be returned either as JSON or as bytes serialized by SSZ. - [Get validators from state](https://docs.tatum.io/reference/rpc-ethereum-poststatevalidators.md): Returns filterable list of validators with their balance, status and index. Information will be returned for all indices or public key that match known validators. If an index or public key does not match any known validator, no information will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering; both the index and public key are returned for each validator, and can be used to confirm for which inputs a response has been returned. The POST variant of this endpoint has the same semantics as the GET endpoint but passes the lists of IDs and statuses via a POST body in order to enable larger requests. - [Signal beacon node to prepare for a committee subnet](https://docs.tatum.io/reference/rpc-ethereum-preparebeaconcommitteesubnet.md): After beacon node receives this request, search using discv5 for peers related to this subnet and replace current peers with those ones if necessary If validator `is_aggregator`, beacon node must: - announce subnet topic subscription on gossipsub - aggregate attestations received on that subnet - [Provide beacon node with proposals for the given validators.](https://docs.tatum.io/reference/rpc-ethereum-preparebeaconproposer.md): Prepares the beacon node for potential proposers by supplying information required when proposing blocks for the given validators. The information supplied for each validator index will persist through the epoch in which the call is submitted and for a further two epochs after that, or until the beacon node restarts. It is expected that validator clients will send this information periodically, for example each epoch, to ensure beacon nodes have correct and timely fee recipient information. Note that there is no guarantee that the beacon node will use the supplied fee recipient when creating a block proposal, so on receipt of a proposed block the validator should confirm that it finds the fee recipient within the block acceptable before signing it. Also note that requests containing currently inactive or unknown validator indices will be accepted, as they may become active at a later epoch. - [Subscribe to sync committee subnets](https://docs.tatum.io/reference/rpc-ethereum-preparesynccommitteesubnets.md): Subscribe to a number of sync committee subnets Sync committees are not present in phase0, but are required for Altair networks. Subscribing to sync committee subnets is an action performed by VC to enable network participation in Altair networks, and only required if the VC has an active validator in an active sync committee. - [Produce an attestation data](https://docs.tatum.io/reference/rpc-ethereum-produceattestationdata.md): Requests that the beacon node produce an AttestationData. A 503 error must be returned if the block identified by the response `beacon_block_root` is optimistic (i.e. the attestation attests to a block that has not been fully verified by an execution engine). - [Produce a new block, without signature.](https://docs.tatum.io/reference/rpc-ethereum-produceblockv3.md): Requests a beacon node to produce a valid block, which can then be signed by a validator. The returned block may be blinded or unblinded, depending on the current state of the network as decided by the execution and beacon nodes. The beacon node must return an unblinded block if it obtains the execution payload from its paired execution node. It must only return a blinded block if it obtains the execution payload header from an MEV relay. Metadata in the response indicates the type of block produced, and the supported types of block will be added to as forks progress. - [Produce a sync committee contribution](https://docs.tatum.io/reference/rpc-ethereum-producesynccommitteecontribution.md): Requests that the beacon node produce a sync committee contribution. A 503 error must be returned if the block identified by the response `beacon_block_root` is optimistic (i.e. the sync committee contribution refers to a block that has not been fully verified by an execution engine). A 404 error must be returned if no sync committee contribution is available for the requested `beacon_block_root`. - [Publish multiple aggregate and proofs](https://docs.tatum.io/reference/rpc-ethereum-publishaggregateandproofs.md): Verifies given aggregate and proofs and publishes them on appropriate gossipsub topic. - [Publish multiple aggregate and proofs](https://docs.tatum.io/reference/rpc-ethereum-publishaggregateandproofsv2.md): Verifies given aggregate and proofs and publishes them on appropriate gossipsub topic. - [Publish a signed block.](https://docs.tatum.io/reference/rpc-ethereum-publishblindedblock.md): Instructs the beacon node to use the components of the `SignedBlindedBeaconBlock` to construct and publish a `SignedBeaconBlock` by swapping out the `transactions_root` for the corresponding full list of `transactions`. The beacon node should broadcast a newly constructed `SignedBeaconBlock` to the beacon network, to be included in the beacon chain. The beacon node is not required to validate the signed `BeaconBlock`, and a successful response (20X) only indicates that the broadcast has been successful. The beacon node is expected to integrate the new block into its state, and therefore validate the block internally, however blocks which fail the validation are still broadcast but a different status code is returned (202). Before Bellatrix, this endpoint will accept a `SignedBeaconBlock`. - [Publish a signed block.](https://docs.tatum.io/reference/rpc-ethereum-publishblindedblockv2.md): Instructs the beacon node to use the components of the `SignedBlindedBeaconBlock` to construct and publish a `SignedBeaconBlock` by swapping out the `transactions_root` for the corresponding full list of `transactions`. The beacon node should broadcast a newly constructed `SignedBeaconBlock` to the beacon network, to be included in the beacon chain. The beacon node is not required to validate the signed `BeaconBlock`, and a successful response (20X) only indicates that the broadcast has been successful. The beacon node is expected to integrate the new block into its state, and therefore validate the block internally, however blocks which fail the validation are still broadcast but a different status code is returned (202). Before Bellatrix, this endpoint will accept a `SignedBeaconBlock`. The broadcast behaviour may be adjusted via the `broadcast_validation` query parameter. - [Publish a signed block.](https://docs.tatum.io/reference/rpc-ethereum-publishblock.md): Instructs the beacon node to broadcast a newly signed beacon block to the beacon network, to be included in the beacon chain. A success response (20x) indicates that the block passed gossip validation and was successfully broadcast onto the network. The beacon node is also expected to integrate the block into state, but may broadcast it before doing so, so as to aid timely delivery of the block. Should the block fail full validation, a separate success response code (202) is used to indicate that the block was successfully broadcast but failed integration. After Deneb, this additionally instructs the beacon node to broadcast all given blobs. - [Publish a signed block.](https://docs.tatum.io/reference/rpc-ethereum-publishblockv2.md): Instructs the beacon node to broadcast a newly signed beacon block to the beacon network, to be included in the beacon chain. A success response (20x) indicates that the block passed gossip validation and was successfully broadcast onto the network. The beacon node is also expected to integrate the block into the state, but may broadcast it before doing so, so as to aid timely delivery of the block. Should the block fail full validation, a separate success response code (202) is used to indicate that the block was successfully broadcast but failed integration. After Deneb, this additionally instructs the beacon node to broadcast all given blobs. The broadcast behaviour may be adjusted via the `broadcast_validation` query parameter. - [Publish multiple contribution and proofs](https://docs.tatum.io/reference/rpc-ethereum-publishcontributionandproofs.md): Publish multiple signed sync committee contribution and proofs - [Provide beacon node with registrations for the given validators to the external builder network.](https://docs.tatum.io/reference/rpc-ethereum-registervalidator.md): Prepares the beacon node for engaging with external builders. The information must be sent by the beacon node to the builder network. It is expected that the validator client will send this information periodically to ensure the beacon node has correct and timely registration information to provide to builders. Note that only registrations for active or pending validators must be sent to the builder network. Registrations for unknown or exited validators must be filtered out and not sent to the builder network. - [Determine if a distributed validator has been selected to aggregate attestations](https://docs.tatum.io/reference/rpc-ethereum-submitbeaconcommitteeselections.md): This endpoint should be used by a validator client running as part of a distributed validator cluster, and is implemented by a distributed validator middleware client. This endpoint is used to exchange partial selection proofs for combined/aggregated selection proofs to allow a validator client to correctly determine if any of its validators has been selected to perform an attestation aggregation duty in a slot. Validator clients running in a distributed validator cluster must query this endpoint at the start of an epoch for the current and lookahead (next) epochs for all validators that have attester duties in the current and lookahead epochs. Consensus clients need not support this endpoint and may return a 501. - [Submit Attestation objects to node](https://docs.tatum.io/reference/rpc-ethereum-submitpoolattestations.md): Submits Attestation objects to the node. Each attestation in the request body is processed individually. If an attestation is validated successfully the node MUST publish that attestation on the appropriate subnet. If one or more attestations fail validation the node MUST return a 400 error with details of which attestations have failed, and why. - [Submit Attestation objects to node](https://docs.tatum.io/reference/rpc-ethereum-submitpoolattestationsv2.md): Submits attestations to the node. Each attestation in the request body is processed individually. If an attestation is validated successfully, the node MUST publish that attestation on the appropriate subnet. If one or more attestations fail validation, the node MUST return a 400 error with details of which attestations have failed, and why. Prior to the Electra hard fork, this endpoint MUST be sent Attestation objects only. At and after the Electra hard fork, this endpoint MUST be sent SingleAttestation objects only. - [Submit AttesterSlashing object to node's pool](https://docs.tatum.io/reference/rpc-ethereum-submitpoolattesterslashings.md): Submits AttesterSlashing object to node's pool and if passes validation node MUST broadcast it to network. - [Submit AttesterSlashing object to node's pool](https://docs.tatum.io/reference/rpc-ethereum-submitpoolattesterslashingsv2.md): Submits AttesterSlashing object to node's pool. Upon successful validation the node MUST broadcast it to network. - [Submit SignedBLSToExecutionChange object to node's pool](https://docs.tatum.io/reference/rpc-ethereum-submitpoolblstoexecutionchange.md): Submits a list of SignedBLSToExecutionChange objects to node's pool. Any that pass validation MUST be broadcast to the network. - [Submit ProposerSlashing object to node's pool](https://docs.tatum.io/reference/rpc-ethereum-submitpoolproposerslashings.md): Submits ProposerSlashing object to node's pool and if passes validation node MUST broadcast it to network. - [Submit sync committee signatures to node](https://docs.tatum.io/reference/rpc-ethereum-submitpoolsynccommitteesignatures.md): Submits sync committee signature objects to the node. Sync committee signatures are not present in phase0, but are required for Altair networks. If a sync committee signature is validated successfully the node MUST publish that sync committee signature on all applicable subnets. If one or more sync committee signatures fail validation the node MUST return a 400 error with details of which sync committee signatures have failed, and why. - [Submit SignedVoluntaryExit object to node's pool](https://docs.tatum.io/reference/rpc-ethereum-submitpoolvoluntaryexit.md): Submits SignedVoluntaryExit object to node's pool and if passes validation node MUST broadcast it to network. - [Determine if a distributed validator has been selected to make a sync committee contribution](https://docs.tatum.io/reference/rpc-ethereum-submitsynccommitteeselections.md): Submit sync committee selections to a DVT middleware client. It returns the threshold aggregated sync committee selection. This endpoint should be used by a validator client running as part of a distributed validator cluster, and is implemented by a distributed validator middleware client. This endpoint is used to exchange partial selection proofs (slot signatures) for combined/aggregated selection proofs to allow a validator client to correctly determine if any of its validators has been selected to perform a sync committee contribution (sync aggregation) duty in a slot. Validator clients running in a distributed validator cluster must query this endpoint at the start of each slot for all validators that are included in the current sync committee. Consensus clients need not support this endpoint and may return a 501. - [Invoke a method in a smart contract on Ethereum](https://docs.tatum.io/reference/ethblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Ethereum.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send ETH or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/ethblockchaintransfer.md):2 credits per API call
Send ETH or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending ETH, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Ethereum transaction](https://docs.tatum.io/reference/ethbroadcast.md):2 credits per API call
Broadcast signed transaction to Ethereum blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Ethereum account address from Extended public key](https://docs.tatum.io/reference/ethgenerateaddress.md):Generates an Ethereum account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Ethereum private key](https://docs.tatum.io/reference/ethgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Ethereum wallet](https://docs.tatum.io/reference/ethgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Ethereum wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Ethereum wallet.
- [Get the ETH balance of an Ethereum account](https://docs.tatum.io/reference/ethgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/ethereum/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get the balance of ETH of an Ethereum account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Ethereum block by hash](https://docs.tatum.io/reference/ethgetblock.md):⚠️ Deprecated: Get Block
GET /v3/ethereum/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Gets an Ethereum block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/ethgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/ethereum/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
Gets the current Ethereum block number. This is the number of the latest block in the blockchain.
- [Get Ethereum internal transactions by address](https://docs.tatum.io/reference/ethgetinternaltransactionbyaddress.md):⚠️ Deprecated: Get Internal Transactions By Address
GET /v3/ethereum/account/transaction/internal/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/internalFetch internal transactions for a blockchain address.
Get Ethereum internal transactions by address.
- [Get Ethereum Transaction](https://docs.tatum.io/reference/ethgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/ethereum/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
1 credit per API call
Get Ethereum transaction by transaction hash.
- [Get Ethereum transactions by address](https://docs.tatum.io/reference/ethgettransactionbyaddress.md):⚠️ Deprecated: Get Transactions By Address
GET /v3/ethereum/account/transaction/{address}is deprecated.Use
GET /v4/data/transaction/historyFetch transaction history for a blockchain address.
This endpoint is deprecated. Do not use it.
Get Ethereum transactions by address. This includes incoming and outgoing transactions for the address.
- [Get count of outgoing Ethereum transactions](https://docs.tatum.io/reference/ethgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/ethereum/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
Get a number of outgoing Ethereum transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/ethweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Ethereum node provided by Tatum. To learn more about Ethereum Web3, visit the Ethereum developers' guide.
- [Ethereum](https://docs.tatum.io/reference/rpc-ethereum.md): Explore Ethereum, the decentralized blockchain platform with RPC gateway and comprehensive documentation. Powering smart contracts, dApps, DeFi, and NFTs. - [debug_getRawBlock - Ethereum](https://docs.tatum.io/reference/rpc-ethereum-debug_getrawblock.md): Returns an RLP-encoded block. - [debug_getRawHeader - Ethereum](https://docs.tatum.io/reference/rpc-ethereum-debug_getrawheader.md): Returns an RLP-encoded header. - [debug_getRawReceipts - Ethereum](https://docs.tatum.io/reference/rpc-ethereum-debug_getrawreceipts.md): Returns an array of EIP-2718 binary-encoded receipts. - [debug_storageRangeAt - Ethereum](https://docs.tatum.io/reference/rpc-ethereum-debug_storagerangeat.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
2 credits per API call
Invoke a method in an existing smart contract on Fantom.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send FTM or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/fantomblockchaintransfer.md):2 credits per API call
Send FTM or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending FTM, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Fantom transaction](https://docs.tatum.io/reference/fantombroadcast.md):2 credits per API call
Broadcast signed transaction to Fantom blockchain.
- [Generate Fantom account address from Extended public key](https://docs.tatum.io/reference/fantomgenerateaddress.md):Generates an Fantom account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Fantom private key](https://docs.tatum.io/reference/fantomgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Fantom wallet](https://docs.tatum.io/reference/fantomgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Fantom wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Fantom wallet.
- [Get the FTM balance of an Fantom account](https://docs.tatum.io/reference/fantomgetbalance.md):⚠️ Deprecated: Get Fantom Balance
GET /v3/fantom/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of FTM of an Fantom account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Fantom block by hash](https://docs.tatum.io/reference/fantomgetblock.md):⚠️ Deprecated: Get Fantom Block
GET /v3/fantom/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Fantom block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/fantomgetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/fantom/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Fantom block number. This is the number of the latest block in the blockchain.
- [Get Fantom Transaction](https://docs.tatum.io/reference/fantomgettransaction.md):⚠️ Deprecated: Get Fantom Transaction
GET /v3/fantom/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Fantom transaction by transaction hash.
- [Get count of outgoing Fantom transactions](https://docs.tatum.io/reference/fantomgettransactioncount.md):⚠️ Deprecated: Get Fantom Transaction Count
GET /v3/fantom/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Fantom transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/fantomweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Fantom node provided by Tatum. To learn more about Fantom Web3, visit the Fantom developers' guide.
- [Fantom](https://docs.tatum.io/reference/rpc-fantom.md): Discover Fantom, an EVM-compatible blockchain using aBFT consensus for high-speed transactions and decentralized finance applications. - [debug_storageRangeAt - Fantom](https://docs.tatum.io/reference/rpc-fantom-debug_storagerangeat.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
2 credits per API call
Invoke a method in an existing smart contract on Flare.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send FLR or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/flareblockchaintransfer.md):2 credits per API call
Send FLR or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending FLR, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Flare transaction](https://docs.tatum.io/reference/flarebroadcast.md):2 credits per API call
Broadcast signed transaction to Flare blockchain.
- [Generate Flare account address from Extended public key](https://docs.tatum.io/reference/flaregenerateaddress.md):Generates an Flare account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Flare private key](https://docs.tatum.io/reference/flaregenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Flare wallet](https://docs.tatum.io/reference/flaregeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Flare wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Flare wallet.
- [Get the FLR balance of an Flare account](https://docs.tatum.io/reference/flaregetbalance.md):⚠️ Deprecated: Get Flare Balance
GET /v3/flare/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get the balance of FLR of an Flare account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Flare block by hash](https://docs.tatum.io/reference/flaregetblock.md):⚠️ Deprecated: Get Flare Block
GET /v3/flare/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
Gets an Flare block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/flaregetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/flare/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
Gets the current Flare block number. This is the number of the latest block in the blockchain.
- [Get Flare Transaction](https://docs.tatum.io/reference/flaregettransaction.md):⚠️ Deprecated: Get Flare Transaction
GET /v3/flare/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
1 credit per API call
Get Flare transaction by transaction hash.
- [Get count of outgoing Flare transactions](https://docs.tatum.io/reference/flaregettransactioncount.md):⚠️ Deprecated: Get Flare Transaction Count
GET /v3/flare/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
Get a number of outgoing Flare transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/flareweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Flare node provided by Tatum. To learn more about Flare Web3, visit the Flare developers' guide.
- [Flare](https://docs.tatum.io/reference/rpc-flare.md): Discover Flare blockchain, a platform for interoperability and scalable decentralized applications. Build with RPC gateway and cross-chain functionality. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-flare-debug_getbadblocks.md): Flare RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-flare-debug_storagerangeat.md): Flare RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-flare-debug_traceblock.md): Flare RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-flare-debug_traceblockbyhash.md): Flare RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-flare-debug_traceblockbynumber.md): Flare RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-flare-debug_tracecall.md): Flare RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-flare-debug_tracetransaction.md): Flare RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-flare-eth_blocknumber.md): Flare RPC - [eth_call](https://docs.tatum.io/reference/rpc-flare-eth_call.md): Flare RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-flare-eth_chainid.md): Flare RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-flare-eth_estimategas.md): Flare RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-flare-eth_feehistory.md): Flare RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-flare-eth_gasprice.md): Flare RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-flare-eth_getbalance.md): Flare RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-flare-eth_getblockbyhash.md): Flare RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-flare-eth_getblockbynumber.md): Flare RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-flare-eth_getblocktransactioncountbyhash.md): Flare RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-flare-eth_getblocktransactioncountbynumber.md): Flare RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-flare-eth_getcode.md): Flare RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-flare-eth_getlogs.md): Flare RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-flare-eth_getproof.md): Flare RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-flare-eth_getstorageat.md): Flare RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-flare-eth_gettransactionbyblockhashandindex.md): Flare RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-flare-eth_gettransactionbyblocknumberandindex.md): Flare RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-flare-eth_gettransactionbyhash.md): Flare RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-flare-eth_gettransactioncount.md): Flare RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-flare-eth_gettransactionreceipt.md): Flare RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-flare-eth_getunclecountbyblockhash.md): Flare RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-flare-eth_getunclecountbyblocknumber.md): Flare RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-flare-eth_maxpriorityfeepergas.md): Flare RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-flare-eth_sendrawtransaction.md): Flare RPC - [txpool_content](https://docs.tatum.io/reference/rpc-flare-txpool_content.md): Flare RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-flare-txpool_inspect.md): Flare RPC - [txpool_status](https://docs.tatum.io/reference/rpc-flare-txpool_status.md): Flare RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-flare-web3_clientversion.md): Flare RPC - [Gnosis](https://docs.tatum.io/reference/rpc-gnosis.md): Explore Gnosis blockchain, designed for decentralized prediction markets and governance. Build secure dApps using its RPC gateway and tools. - [Haqq](https://docs.tatum.io/reference/rpc-haqq.md): Explore HAQQ blockchain, designed for ethical finance and decentralized applications. Build Shariah-compliant dApps using the RPC gateway. - [eth_blocknumber](https://docs.tatum.io/reference/rpc-haqq-eth_blocknumber.md): Haqq RPC - [eth_call](https://docs.tatum.io/reference/rpc-haqq-eth_call.md): Haqq RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-haqq-eth_chainid.md): Haqq RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-haqq-eth_estimategas.md): Haqq RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-haqq-eth_feehistory.md): Haqq RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-haqq-eth_gasprice.md): Haqq RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-haqq-eth_getbalance.md): Haqq RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-haqq-eth_getblockbyhash.md): Haqq RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-haqq-eth_getblockbynumber.md): Haqq RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-haqq-eth_getblocktransactioncountbyhash.md): Haqq RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-haqq-eth_getblocktransactioncountbynumber.md): Haqq RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-haqq-eth_getcode.md): Haqq RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-haqq-eth_getlogs.md): Haqq RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-haqq-eth_getproof.md): Haqq RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-haqq-eth_getstorageat.md): Haqq RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-haqq-eth_gettransactionbyblockhashandindex.md): Haqq RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-haqq-eth_gettransactionbyblocknumberandindex.md): Haqq RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-haqq-eth_gettransactionbyhash.md): Haqq RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-haqq-eth_gettransactioncount.md): Haqq RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-haqq-eth_gettransactionreceipt.md): Haqq RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-haqq-eth_getunclecountbyblockhash.md): Haqq RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-haqq-eth_getunclecountbyblocknumber.md): Haqq RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-haqq-eth_maxpriorityfeepergas.md): Haqq RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-haqq-eth_sendrawtransaction.md): Haqq RPC - [txpool_content](https://docs.tatum.io/reference/rpc-haqq-txpool_content.md): Haqq RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-haqq-txpool_inspect.md): Haqq RPC - [txpool_status](https://docs.tatum.io/reference/rpc-haqq-txpool_status.md): Haqq RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-haqq-web3_clientversion.md): Haqq RPC - [Invoke a method in a smart contract on Harmony](https://docs.tatum.io/reference/oneblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Harmony.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send ONE from account to account](https://docs.tatum.io/reference/oneblockchaintransfer.md):2 credits per API call
Send ONE from account to account.
The default shard 0 is used for the sender and the recipient.
Signing a transaction
When sending ONE, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
Alternatively, using the Tatum client library for supported languages. - [Broadcast signed ONE transaction](https://docs.tatum.io/reference/onebroadcast.md):2 credits per API call
Broadcast signed transaction to ONE blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Transform HEX address to Bech32 ONE address format](https://docs.tatum.io/reference/oneformataddress.md):1 credit per API call
Transform HEX address to Bech32 format with one prefix.
- [Generate ONE account address from Extended public key](https://docs.tatum.io/reference/onegenerateaddress.md):1 credit per API call
Generate ONE account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate ONE private key](https://docs.tatum.io/reference/onegenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate ONE wallet](https://docs.tatum.io/reference/onegeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for ONE wallet with derivation path m'/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible ONE wallet.
- [Get ONE Account balance](https://docs.tatum.io/reference/onegetbalance.md):⚠️ Deprecated: Get ONE Balance
GET /v3/one/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get ONE account balance in ONE. This method does not prints any balance of the HRM20 or HRM721 tokens on the account.
- [Get ONE block by hash](https://docs.tatum.io/reference/onegetblock.md):⚠️ Deprecated: Get ONE Block
GET /v3/one/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
1 credit per API call
Get ONE block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/onegetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/one/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
1 credit per API call
Get ONE current block number. This is the number of the latest block in the blockchain.
- [Get ONE Transaction](https://docs.tatum.io/reference/onegettransaction.md):⚠️ Deprecated: Get ONE Transaction
GET /v3/one/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
2 credits per API call
Get ONE transaction by transaction hash.
- [Get count of outgoing ONE transactions](https://docs.tatum.io/reference/onegettransactioncount.md):⚠️ Deprecated: Get ONE Transaction Count
GET /v3/one/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
1 credit per API call
Get a number of outgoing ONE transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/oneweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the ONE node provided by Tatum. To learn more about ONE Web3, visit the ONE developer's guide.
- [Harmony](https://docs.tatum.io/reference/rpc-harmony.md): Discover Harmony, a blockchain optimized for scalability and low-latency transactions. Build high-performance dApps using its RPC gateway. - [HyperEVM](https://docs.tatum.io/reference/rpc-hyperevm.md): Discover HyperEVM, Hyperliquid’s EVM-compatible execution layer delivering sub-second finality. Deploy lightning-fast dApps through its streamlined RPC endpoints and native $HYPE gas. - [Iota](https://docs.tatum.io/reference/rpc-iota.md): Explore IOTA, a blockchain designed for the Internet of Things (IoT) with feeless transactions. Build decentralized applications using its RPC gateway. - [Katana](https://docs.tatum.io/reference/rpc-katana.md): Explore Katana Chain, an EVM-compatible blockchain built for fast and efficient decentralized applications. Build scalable and cost-effective solutions using its RPC gateway. - [Kaia (Klaytn)](https://docs.tatum.io/reference/rpc-klaytn.md): Kaia (Klaytn) is a Layer-1 blockchain platform developed by leading Asian messengers Kakao and LINE. - [Invoke a method in a smart contract on Klaytn](https://docs.tatum.io/reference/klaytnblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Klaytn.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send KLAY from account to account](https://docs.tatum.io/reference/klaytnblockchaintransfer.md):2 credits per API call
Send KLAY from account to account.
Signing a transaction
When sending KLAY, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Klaytn transaction](https://docs.tatum.io/reference/klaytnbroadcast.md):2 credits per API call
Broadcast signed transaction to Klaytn blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Klaytn account address from Extended public key](https://docs.tatum.io/reference/klaytngenerateaddress.md):1 credit per API call
Generate Klaytn account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate Klaytn private key](https://docs.tatum.io/reference/klaytngenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate Klaytn wallet](https://docs.tatum.io/reference/klaytngeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Klaytn wallet with derivation path m'/44'/966'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Klaytn wallet.
- [Get Klaytn Account balance](https://docs.tatum.io/reference/klaytngetbalance.md):⚠️ Deprecated: Get Klaytn Balance
GET /v3/klaytn/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet native balance for any supported blockchain.
1 credit per API call
Get Klaytn account balance in KLAY. This method does not prints any balance of the ERC20 or ERC721 tokens on the account.
- [Get Klaytn block by hash](https://docs.tatum.io/reference/klaytngetblock.md):⚠️ Deprecated: Get Klaytn Block
GET /v3/klaytn/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockGet block by hash or height for any supported blockchain.
1 credit per API call
Get Klaytn block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/klaytngetcurrentblock.md):⚠️ Deprecated: Get Current Block Number
GET /v3/klaytn/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentGet the current block height for any supported blockchain.
1 credit per API call
Get Klaytn current block number. This is the number of the latest block in the blockchain.
- [Get Klaytn Transaction](https://docs.tatum.io/reference/klaytngettransaction.md):⚠️ Deprecated: Get Klaytn Transaction
GET /v3/klaytn/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionGet transaction by hash for any supported blockchain.
2 credits per API call
Get Klaytn transaction by transaction hash.
- [Get count of outgoing Klaytn transactions](https://docs.tatum.io/reference/klaytngettransactioncount.md):⚠️ Deprecated: Get Klaytn Transaction Count
GET /v3/klaytn/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countGet outgoing transaction count for any supported blockchain.
1 credit per API call
Get a number of outgoing Klaytn transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/klaytnweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the Klaytn node provided by Tatum. To learn more about Klaytn Web3, visit the Klaytn developer's guide.
- [debug_getRawBlock - Kaia](https://docs.tatum.io/reference/rpc-kaia-debug_getrawblock.md): Returns an RLP-encoded block. - [debug_getRawHeader - Kaia](https://docs.tatum.io/reference/rpc-kaia-debug_getrawheader.md): Returns an RLP-encoded header. - [debug_getRawReceipts - Kaia](https://docs.tatum.io/reference/rpc-kaia-debug_getrawreceipts.md): Returns an array of EIP-2718 binary-encoded receipts. - [debug_storageRangeAt - Kaia](https://docs.tatum.io/reference/rpc-kaia-debug_storagerangeat.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
2 credits per API call
Invoke a method in an existing smart contract on KuCoin Community Chain.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send KCS from account to account](https://docs.tatum.io/reference/kcsblockchaintransfer.md):2 credits per API call
Send KCS from account to account.
Signing a transaction
When sending KCS, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
Alternatively, using the Tatum client library for supported languages. - [Broadcast signed Kcs transaction](https://docs.tatum.io/reference/kcsbroadcast.md):2 credits per API call
Broadcast signed transaction to Kcs blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Kcs account address from Extended public key](https://docs.tatum.io/reference/kcsgenerateaddress.md):1 credit per API call
Generate Kcs account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate Kcs private key](https://docs.tatum.io/reference/kcsgenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate Kcs wallet](https://docs.tatum.io/reference/kcsgeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Kcs wallet with derivation path m'/44'/966'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Kcs wallet.
- [Get Kcs Account balance](https://docs.tatum.io/reference/kcsgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/kcs/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get Kcs account balance in KCS. This method does not prints any balance of the ERC20 or ERC721 tokens on the account.
- [Get Kcs block by hash](https://docs.tatum.io/reference/kcsgetblock.md):⚠️ Deprecated: Get Block
GET /v3/kcs/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
1 credit per API call
Get Kcs block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/kcsgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/kcs/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
1 credit per API call
Get Kcs current block number. This is the number of the latest block in the blockchain.
- [Get Kcs Transaction](https://docs.tatum.io/reference/kcsgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/kcs/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
2 credits per API call
Get Kcs transaction by transaction hash.
- [Get count of outgoing Kcs transactions](https://docs.tatum.io/reference/kcsgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/kcs/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
1 credit per API call
Get a number of outgoing Kcs transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/kcsweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the Kcs node provided by Tatum. To learn more about Kcs Web3, visit the Kcs developer's guide.
- [Kusama Asset Hub](https://docs.tatum.io/reference/rpc-kusama-assethub.md): Explore Kusama Asset Hub, a system parachain for low-cost asset creation, transfers, and NFT management on the Kusama network. - [Kusama](https://docs.tatum.io/reference/rpc-kusama.md): Explore Kusama, an experimental and fast-moving blockchain network designed for innovation in decentralized applications and governance. - [Lisk](https://docs.tatum.io/reference/rpc-lisk.md): Discover Lisk, a blockchain platform designed for decentralized applications. Build secure and scalable dApps with its developer-friendly SDK. - [Litecoin](https://docs.tatum.io/reference/rpc-litecoin.md): Explore Litecoin, a blockchain designed for fast and low-fee transactions. Build decentralized payment solutions using its RPC gateway. - [Broadcast signed Litecoin transaction](https://docs.tatum.io/reference/ltcbroadcast.md):Broadcast signed transaction to Litecoin blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
Generate Litecoin deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
Generate private key for address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Litecoin wallet with derivation path m'/44'/2'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/litecoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Litecoin wallet.
⚠️ Deprecated: Get Litecoin Address Balance
GET /v3/litecoin/address/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceGet the balance of a Litecoin address.
5 credits per API call
Get the balance of a Litecoin address.
⚠️ Deprecated: Get Litecoin Address Balance Batch
GET /v3/litecoin/address/balance/batchis deprecated.Use
GET /v4/data/blockchains/balance/batchGet the balance of multiple Litecoin addresses.
5 credit per address for each API call
Get the balance of multiple Litecoin addresses.
- [Get Litecoin Block by hash or height](https://docs.tatum.io/reference/ltcgetblock.md):Get Litecoin Block detail by block hash or height.
Get Litecoin Blockchain Information. Obtain basic info like testnet / mainnet version of the chain, current block number and it's hash.
⚠️ Deprecated: Get Block Hash
GET /v3/litecoin/block/hash/{i}is deprecated.Use
GET /v4/data/blockchains/block/hashFetch the hash of a block from the blockchain.
Get Litecoin Block hash. Returns hash of the block to get the block detail.
⚠️ Deprecated: Get Mempool
GET /v3/litecoin/mempoolis deprecated.Use
GET /v4/data/blockchains/mempoolGet mempool (unconfirmed) transaction hashes for a UTXO chain.
Get Litecoin Transaction ids in the mempool.
Get Litecoin Transaction detail by transaction hash.
Get Litecoin Transaction by address.
5 credit per address for each API call
Retrieve transactions for multiple Litecoin addresses in a batch.
- [Get information about a transaction output (UTXO) in a Litecoin transaction](https://docs.tatum.io/reference/ltcgetutxo.md):⚠️ Deprecated: Get UTXO
GET /v3/litecoin/utxo/{hash}/{index}is deprecated.Use
GET /v4/data/blockchains/utxo/infoGet information about a transaction output (UTXO) by transaction hash and output index.
5 credits per API call
Get information about a transaction output in a transaction and check whether this output is a UTXO or has been spent.
"UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of LTC that remains at a Litecoin address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information the UTXO, see the Bitcoin user documentation.
404 response code.2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based JSON RPC driver to connect directly to the node provided by Tatum.
- [Send LTC to Litecoin addresses](https://docs.tatum.io/reference/ltctransferblockchain.md):10 credits per API call
Send LTC to blockchain addresses.
Litecoin transactions are based on UTXOs. "UTXO" stands for "Unspent Transaction Output". A UTXO is the amount of LTC that remains at a Litecoin address after a cryptocurrency transaction involving this address has been performed. The UTXO can then be used as input for a new cryptocurrency transaction. For more information about the UTXO, see the Bitcoin user documentation. To check UTXOs in a transaction, see the API for getting information about a transaction output (UTXO) in a Litecoin transaction.
You can build a LTC transaction by one of the following methods:
LtcTransactionAddress or LtcTransactionAddressKMS schema of the request body.LtcTransactionFromUTXO or LtcTransactionFromUTXOKMS schema of the request body.When an UTXO is entered into a transaction, the whole UTXO amount is included and must be spent. For example, address A receives two transactions, T1 with 1 LTC and T2 with 2 LTC. A transaction that consumes the UTXOs from both T1 and T2 will have an available amount of 3 LTC to spend:1 LTC (from T1) + 2 LTC (from T2) = 3 LTC (to spend in total)
You can send the assets to one or multiple recipients in one transaction. If you send the assets to multiple addresses, each address must have its own amount to receive.
Paying the gas fee and receiving the change
When the amount that the recipients should receive is lower than the amount from the UTXOs, the difference between these two amounts is by default used as the gas fee for the transaction. Because this amount may be considerable and you may not want to spend it all on the gas fee, you can explicitly specify the fee amount and the blockchain address where any extra funds remaining after covering the fee will be sent (the fee and changeAddress parameters in the request body, correspondingly).
Signing a transaction
When sending LTC, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
Send EGLD from account to account.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on devnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Broadcast signed transaction to EGLD blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate EGLD account address from mnemonic](https://docs.tatum.io/reference/egldgenerateaddress.md):Generate EGLD account deposit address from mnemonic phrase. Deposit address is generated for the specific index - each mnemonic phrase can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate EGLD private key](https://docs.tatum.io/reference/egldgenerateaddressprivatekey.md):Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate EGLD wallet](https://docs.tatum.io/reference/egldgeneratewallet.md):The Elrond Address format is bech32, specified by the BIP 0173. The address always starts with an erd1. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for EGLD wallet with derivation path m'/44'/508'/0'/0'. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible EGLD wallet.
- [Get EGLD Account balance](https://docs.tatum.io/reference/egldgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/egld/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
Get account balance in EGLD.
- [Get EGLD block by hash](https://docs.tatum.io/reference/egldgetblock.md):⚠️ Deprecated: Get Block
GET /v3/egld/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Get EGLD block by block hash or block number. EGLD docs
- [Get current block number](https://docs.tatum.io/reference/egldgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/egld/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
Get EGLD current block number. This is the number of the latest block in the blockchain.
- [Get EGLD Transaction](https://docs.tatum.io/reference/egldgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/egld/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
Get EGLD transaction by transaction hash. Detail result please find here EGLD docs
- [Get count of outgoing EGLD transactions](https://docs.tatum.io/reference/egldgettransactionaddress.md):This endpoint allows one to retrieve the latest 20 transactions sent from an address.
- [Get count of outgoing EGLD transactions](https://docs.tatum.io/reference/egldgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/egld/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
Get a number of outgoing EGLD transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Node HTTP driver](https://docs.tatum.io/reference/egldnodeget.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based driver to connect directly to the EGLD node provided by Tatum. To learn more about EGLD, visit the EGLD developer's guide.
- [Node HTTP driver](https://docs.tatum.io/reference/egldnodepost.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based driver to connect directly to the EGLD node provided by Tatum. To learn more about EGLD, visit the EGLD developer's guide.
- [Near](https://docs.tatum.io/reference/rpc-near.md): Explore NEAR, a blockchain platform built for fast and low-cost transactions. Build user-friendly decentralized applications using its RPC gateway. - [account_changes - Near](https://docs.tatum.io/reference/rpc-near-account_changes.md): Returns account changes from transactions in a given account. - [block - Near](https://docs.tatum.io/reference/rpc-near-block.md): Queries network and returns block for given height or hash. You can also use finality param to return latest block details. - [call_function - Near](https://docs.tatum.io/reference/rpc-near-call_function.md): Allows you to call a contract method as a view function. - [changes_in_block - Near](https://docs.tatum.io/reference/rpc-near-changes_in_block.md): Returns changes in block for given block height or hash. You can also use finality param to return latest block details. - [chunk - Near](https://docs.tatum.io/reference/rpc-near-chunk.md): Returns details of a specific chunk. You can run a block details query to get a valid chunk hash. - [contract_code_changes - Near](https://docs.tatum.io/reference/rpc-near-contract_code_changes.md): Returns code changes made when deploying a contract. Change is returned is a base64 encoded WASM file. - [data_changes - Near](https://docs.tatum.io/reference/rpc-near-data_changes.md): Returns account changes from transactions in a given account. - [gas_price - Near](https://docs.tatum.io/reference/rpc-near-gas_price.md): Returns gas price for a specific block_height or block_hash. - [genesis_config - Near](https://docs.tatum.io/reference/rpc-near-genesis_config.md): Returns current genesis configuration. - [network_info - Near](https://docs.tatum.io/reference/rpc-near-network_info.md): Returns the current state of node network connections (active peers, transmitted data, etc.) - [receipt - Near](https://docs.tatum.io/reference/rpc-near-receipt.md): Fetches a receipt by its ID (as is, without a status or execution outcome) - [send_tx - Near](https://docs.tatum.io/reference/rpc-near-send_tx.md): Sends transaction. Returns the guaranteed execution status and the results the blockchain can provide at the moment. - [status - Near](https://docs.tatum.io/reference/rpc-near-status.md): Returns general status of a given node (sync status, nearcore node version, protocol version, etc.), and the current set of validators. - [tx_status - Near](https://docs.tatum.io/reference/rpc-near-tx_status.md): Queries status of a transaction by hash, returning the final transaction result and details of all receipts. - [tx - Near](https://docs.tatum.io/reference/rpc-near-tx.md): Queries status of a transaction by hash and returns the final transaction result. - [view_access_key_changes - Near](https://docs.tatum.io/reference/rpc-near-view_access_key_changes.md): Returns access key changes in a specific block. - [view_access_key - Near](https://docs.tatum.io/reference/rpc-near-view_access_key.md): Returns information about a single access key for given account. - [view_account - Near](https://docs.tatum.io/reference/rpc-near-view_account.md): Returns basic account information. - [view_code - Near](https://docs.tatum.io/reference/rpc-near-view_code.md): Returns the contract code (Wasm binary) deployed to the account. Please note that the returned code will be encoded in base64. - [view_state - Near](https://docs.tatum.io/reference/rpc-near-view_state.md): Returns the state (key value pairs) of a contract based on the key prefix (base64 encoded). Pass an empty string for prefix_base64 if you would like to return the entire state. Please note that the returned state will be base64 encoded as well. - [Oasis](https://docs.tatum.io/reference/rpc-oasis.md): Discover Oasis, a privacy-focused blockchain platform optimized for scalable and confidential decentralized applications. - [Optimism](https://docs.tatum.io/reference/rpc-optimism.md): Explore Optimism, a Layer 2 scaling solution for Ethereum. Build fast and low-cost decentralized applications using its RPC gateway. - [Invoke a method in a smart contract on Optimism](https://docs.tatum.io/reference/optimismblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Optimism.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send OPTIMISM or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/optimismblockchaintransfer.md):2 credits per API call
Send OPTIMISM or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending OPTIMISM, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Broadcast signed Optimism transaction](https://docs.tatum.io/reference/optimismbroadcast.md):2 credits per API call
Broadcast signed transaction to Optimism blockchain.
- [Generate Optimism account address from Extended public key](https://docs.tatum.io/reference/optimismgenerateaddress.md):Generates an Optimism account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Optimism private key](https://docs.tatum.io/reference/optimismgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Optimism wallet](https://docs.tatum.io/reference/optimismgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Optimism wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Optimism wallet.
- [Get the OPTIMISM balance of an Optimism account](https://docs.tatum.io/reference/optimismgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/optimism/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get the balance of OPTIMISM of an Optimism account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Optimism block by hash](https://docs.tatum.io/reference/optimismgetblock.md):⚠️ Deprecated: Get Block
GET /v3/optimism/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Gets an Optimism block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/optimismgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/optimism/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
Gets the current Optimism block number. This is the number of the latest block in the blockchain.
- [Get Optimism Transaction](https://docs.tatum.io/reference/optimismgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/optimism/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
1 credit per API call
Get Optimism transaction by transaction hash.
- [Get count of outgoing Optimism transactions](https://docs.tatum.io/reference/optimismgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/optimism/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
Get a number of outgoing Optimism transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/optimismweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Optimism node provided by Tatum. To learn more about Optimism Web3, visit the Optimism developers' guide.
- [debug_getbadblocks](https://docs.tatum.io/reference/rpc-optimism-debug_getbadblocks.md): Optimism RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-optimism-debug_storagerangeat.md): Optimism RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-optimism-debug_traceblock.md): Optimism RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-optimism-debug_traceblockbyhash.md): Optimism RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-optimism-debug_traceblockbynumber.md): Optimism RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-optimism-debug_tracecall.md): Optimism RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-optimism-debug_tracetransaction.md): Optimism RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-optimism-eth_blocknumber.md): Optimism RPC - [eth_call](https://docs.tatum.io/reference/rpc-optimism-eth_call.md): Optimism RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-optimism-eth_chainid.md): Optimism RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-optimism-eth_estimategas.md): Optimism RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-optimism-eth_feehistory.md): Optimism RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-optimism-eth_gasprice.md): Optimism RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-optimism-eth_getbalance.md): Optimism RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-optimism-eth_getblockbyhash.md): Optimism RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-optimism-eth_getblockbynumber.md): Optimism RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-optimism-eth_getblocktransactioncountbyhash.md): Optimism RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-optimism-eth_getblocktransactioncountbynumber.md): Optimism RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-optimism-eth_getcode.md): Optimism RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-optimism-eth_getlogs.md): Optimism RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-optimism-eth_getproof.md): Optimism RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-optimism-eth_getstorageat.md): Optimism RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-optimism-eth_gettransactionbyblockhashandindex.md): Optimism RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-optimism-eth_gettransactionbyblocknumberandindex.md): Optimism RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-optimism-eth_gettransactionbyhash.md): Optimism RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-optimism-eth_gettransactioncount.md): Optimism RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-optimism-eth_gettransactionreceipt.md): Optimism RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-optimism-eth_getunclecountbyblockhash.md): Optimism RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-optimism-eth_getunclecountbyblocknumber.md): Optimism RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-optimism-eth_maxpriorityfeepergas.md): Optimism RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-optimism-eth_sendrawtransaction.md): Optimism RPC - [txpool_content](https://docs.tatum.io/reference/rpc-optimism-txpool_content.md): Optimism RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-optimism-txpool_inspect.md): Optimism RPC - [txpool_status](https://docs.tatum.io/reference/rpc-optimism-txpool_status.md): Optimism RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-optimism-web3_clientversion.md): Optimism RPC - [Plasma](https://docs.tatum.io/reference/rpc-plasma.md): Discover Plasma, a high-performance blockchain optimized for DeFi and scalable decentralized applications. Harness its RPC gateway to build fast, secure, and low-cost financial solutions. - [Plume](https://docs.tatum.io/reference/rpc-plume.md): Discover Plume, the first modular L2 blockchain dedicated to Real World Assets (RWA). Build compliant, high-performance decentralized applications that bridge traditional finance with the crypto ecosystem. - [Polkadot Asset Hub](https://docs.tatum.io/reference/rpc-polkadot-assethub.md): Explore Polkadot Asset Hub, the system parachain for issuing, managing, and transferring assets and NFTs within the Polkadot ecosystem. - [Polkadot](https://docs.tatum.io/reference/rpc-polkadot.md): Explore Polkadot, a scalable, interoperable blockchain platform powering a network of parachains and enabling next-generation decentralized applications. - [Polygon](https://docs.tatum.io/reference/rpc-polygon.md): Explore Polygon, a Layer 2 scaling solution for Ethereum. Build scalable and low-cost decentralized applications using its RPC gateway. - [Invoke a method in a smart contract on Polygon](https://docs.tatum.io/reference/polygonblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on Polygon.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send MATIC from account to account](https://docs.tatum.io/reference/polygonblockchaintransfer.md):2 credits per API call
Send MATIC from account to account.
Signing a transaction
When sending MATIC, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Polygon transaction](https://docs.tatum.io/reference/polygonbroadcast.md):2 credits per API call
Broadcast signed transaction to Polygon blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Polygon account address from Extended public key](https://docs.tatum.io/reference/polygongenerateaddress.md):1 credit per API call
Generate Polygon account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate Polygon private key](https://docs.tatum.io/reference/polygongenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate Polygon wallet](https://docs.tatum.io/reference/polygongeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Polygon wallet with derivation path m'/44'/966'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Polygon wallet.
- [Get Polygon Account balance](https://docs.tatum.io/reference/polygongetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/polygon/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get Polygon account balance in MATIC. This method does not prints any balance of the ERC20 or ERC721 tokens on the account.
- [Get Polygon block by hash](https://docs.tatum.io/reference/polygongetblock.md):⚠️ Deprecated: Get Block
GET /v3/polygon/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
1 credit per API call
Get Polygon block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/polygongetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/polygon/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
1 credit per API call
Get Polygon current block number. This is the number of the latest block in the blockchain.
- [Get Polygon Transaction](https://docs.tatum.io/reference/polygongettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/polygon/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
2 credits per API call
Get Polygon transaction by transaction hash.
- [Get Polygon transactions by address](https://docs.tatum.io/reference/polygongettransactionbyaddress.md):This endpoint is deprecated. Do not use it.
20 credit per API call
Get Polygon transactions by address. This includes incoming and outgoing transactions for the address.
- [Get count of outgoing Polygon transactions](https://docs.tatum.io/reference/polygongettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/polygon/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
1 credit per API call
Get a number of outgoing Polygon transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/polygonweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the Polygon node provided by Tatum. To learn more about Polygon Web3, visit the Polygon developer's guide.
- [debug_storagerangeat](https://docs.tatum.io/reference/rpc-polygon-debug_storagerangeat.md): Polygon RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-polygon-debug_traceblockbyhash.md): Polygon RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-polygon-debug_tracecall.md): Polygon RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-polygon-debug_tracetransaction.md): Polygon RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-polygon-eth_blocknumber.md): Polygon RPC - [eth_call](https://docs.tatum.io/reference/rpc-polygon-eth_call.md): Polygon RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-polygon-eth_chainid.md): Polygon RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-polygon-eth_estimategas.md): Polygon RPC - [eth_feeHistory](https://docs.tatum.io/reference/rpc-polygon-eth_feehistory-1.md): Polygon RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-polygon-eth_feehistory.md): Polygon RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-polygon-eth_gasprice.md): Polygon RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-polygon-eth_getbalance.md): Polygon RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-polygon-eth_getblockbyhash.md): Polygon RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-polygon-eth_getblockbynumber.md): Polygon RPC - [eth_getblockreceipts](https://docs.tatum.io/reference/rpc-polygon-eth_getblockreceipts.md): Polygon RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-polygon-eth_getblocktransactioncountbyhash.md): Polygon RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-polygon-eth_getblocktransactioncountbynumber.md): Polygon RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-polygon-eth_getcode.md): Polygon RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-polygon-eth_getlogs.md): Polygon RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-polygon-eth_getproof.md): Polygon RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-polygon-eth_getstorageat.md): Polygon RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-polygon-eth_gettransactionbyblockhashandindex.md): Polygon RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-polygon-eth_gettransactionbyblocknumberandindex.md): Polygon RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-polygon-eth_gettransactionbyhash.md): Polygon RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-polygon-eth_gettransactioncount.md): Polygon RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-polygon-eth_gettransactionreceipt.md): Polygon RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-polygon-eth_getunclecountbyblockhash.md): Polygon RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-polygon-eth_getunclecountbyblocknumber.md): Polygon RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-polygon-eth_maxpriorityfeepergas.md): Polygon RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-polygon-eth_sendrawtransaction.md): Polygon RPC - [txpool_content](https://docs.tatum.io/reference/rpc-polygon-txpool_content.md): Polygon RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-polygon-txpool_inspect.md): Polygon RPC - [txpool_status](https://docs.tatum.io/reference/rpc-polygon-txpool_status.md): Polygon RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-polygon-web3_clientversion.md): Polygon RPC - [Ronin](https://docs.tatum.io/reference/rpc-ronin.md): Explore Ronin, a sidechain purpose-built for Axie Infinity. Enjoy fast, low-cost transactions for gaming and NFT applications. - [debug_storageRangeAt - Ronin](https://docs.tatum.io/reference/rpc-ronin-debug_storagerangeat.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Send SOL from account to account.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Broadcast signed custom transactions to Solana blockchain and waits for transaction confirmation depending on the commitment given. More information about commitment levels here
- [Generate Solana wallet](https://docs.tatum.io/reference/solanageneratewallet.md):Generate Solana private key and account address.
- [Get Solana Account balance](https://docs.tatum.io/reference/solanagetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/solana/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
Get Solana account balance in SOL. This method does not prints any balance of the SPL or NFT tokens on the account.
- [Get Solana block by number](https://docs.tatum.io/reference/solanagetblock.md):⚠️ Deprecated: Get Block
GET /v3/solana/block/{height}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Get Solana block by block hash or block number.
You can find full data description here - https://docs.solana.com/developing/clients/jsonrpc-api#getblock
⚠️ Deprecated: Get Current Block
GET /v3/solana/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
Get Solana current block number. This is the number of the latest block in the blockchain.
- [Get Solana Transaction](https://docs.tatum.io/reference/solanagettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/solana/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
Get Solana transaction by transaction hash.
You can find full data description here - https://docs.solana.com/developing/clients/jsonrpc-api#gettransaction
2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based JSON RPC driver to connect directly to the Solana node provided by Tatum. To learn more about Solana JSON RPC, visit the Solana developer's guide.
- [Sonic](https://docs.tatum.io/reference/rpc-sonic.md): Discover Sonic, an EVM-compatible blockchain combining speed, incentives, and world-class infrastructure. - [debug_traceBlockByHash - Sonic](https://docs.tatum.io/reference/rpc-sonic-debug_traceblockbyhash.md):Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
Complex queries might take longer and incur additional cost
2 credits per API call
Invoke a method in an existing smart contract on Sonic.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
If caller field is present instead of the private key, Tatum will sign the transaction with the managed private key connected to the caller address. This is applicable only for paid mainnet plans and all testnet plans. Keep in mind that the caller address must have enough access right to perform the action in the smart contract method.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send S or fungible tokens (ERC-20) from account to account](https://docs.tatum.io/reference/sonicblockchaintransfer.md):2 credits per API call
Send S or Tatum-supported fungible tokens (ERC-20) from account to account.
NOTE: Sending the fungible tokens is supported only on the mainnet.
Signing a transaction
When sending S, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Broadcast signed Sonic transaction](https://docs.tatum.io/reference/sonicbroadcast.md):2 credits per API call
Broadcast signed transaction to Sonic blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate Sonic account address from Extended public key](https://docs.tatum.io/reference/sonicgenerateaddress.md):Generates an Sonic account deposit address from an Extended public key. The deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate Sonic private key](https://docs.tatum.io/reference/sonicgenerateaddressprivatekey.md):Generates the private key of an address from a mnemonic for a given derivation path index. The private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate Sonic wallet](https://docs.tatum.io/reference/sonicgeneratewallet.md):Tatum supports BIP44 HD wallets. Because they can generate 2^31 addresses from 1 mnemonic phrase, they are very convenient and secure. A mnemonic phrase consists of 24 special words in a defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows the BIP44 specification and generates for Sonic wallets with the derivation path m/44'/60'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generates a BIP44 compatible Sonic wallet.
- [Get the S balance of an Sonic account](https://docs.tatum.io/reference/sonicgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/sonic/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get the balance of S of an Sonic account.
To get the balance of tokens, use the APIs for getting the balance of fungible tokens (ERC-20) and NFTs (ERC-721).
- [Get Sonic block by hash](https://docs.tatum.io/reference/sonicgetblock.md):⚠️ Deprecated: Get Block
GET /v3/sonic/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
Gets an Sonic block-by-block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/sonicgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/sonic/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
Gets the current Sonic block number. This is the number of the latest block in the blockchain.
- [Get Sonic Transaction](https://docs.tatum.io/reference/sonicgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/sonic/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
1 credit per API call
Get Sonic transaction by transaction hash.
- [Get count of outgoing Sonic transactions](https://docs.tatum.io/reference/sonicgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/sonic/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
Get a number of outgoing Sonic transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/sonicweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as an http-based web3 driver to connect directly to the Sonic node provided by Tatum. To learn more about Sonic Web3, visit the Sonic developers' guide.
- [Stellar](https://docs.tatum.io/reference/rpc-stellar.md): Explore Stellar, a blockchain designed for cross-border payments and digital assets. Build financial applications using its RPC gateway. - [Retrieve Related Operations](https://docs.tatum.io/reference/rpc-stellar-cbretrieverelatedoperations.md): This endpoint represents successful operations referencing a given claimable balance and can be used in streaming mode. Streaming mode allows you to listen for new operations referencing this claimable balance as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known operation unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream operations created since your request time. - [Retrieve Related Transactions](https://docs.tatum.io/reference/rpc-stellar-cbretrieverelatedtransactions.md): This endpoint represents successful transactions referencing a given claimable balance and can be used in streaming mode. Streaming mode allows you to listen for new transactions referencing this claimable balance as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known transaction unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream transactions created since your request time. - [List All Offers](https://docs.tatum.io/reference/rpc-stellar-getalloffers.md): This endpoint lists all currently open offers and can be used in streaming mode. Streaming mode allows you to listen for new offers as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known offer unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream offers created since your request time. When filtering by buying or selling arguments, you must use a combination of selling_asset_type, selling_asset_issuer, and selling_asset_code for the selling asset, or a combination of buying_asset_type, buying_asset_issuer, and buying_asset_code for the buying asset. - [List All Trades](https://docs.tatum.io/reference/rpc-stellar-getalltrades.md): This endpoint lists all trades and can be used in streaming mode. Streaming mode allows you to listen for new trades as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known trade unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream trades created since your request time. When filtering for a specific orderbook, you must use use all six of these arguments: base_asset_type, base_asset_issuer, base_asset_code, counter_asset_type, counter_asset_issuer, and counter_asset_code. If the base or counter asset is XLM, you only need to indicate the asset type as native and do not need to designate the code or the issuer. - [Retrieve an Account's Data](https://docs.tatum.io/reference/rpc-stellar-getdatabyaccountid.md): This endpoint represents a single data for a given account. - [Retrieve an Account's Effects](https://docs.tatum.io/reference/rpc-stellar-geteffectsbyaccountid.md): This endpoint returns the effects of a specific account and can be used in streaming mode. Streaming mode allows you to listen for new effects for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known effect unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream effects created since your request time. - [Retrieve an Offer](https://docs.tatum.io/reference/rpc-stellar-getofferbyofferid.md): The single offer endpoint provides information on a specific offer. - [Retrieve an Account's Offers](https://docs.tatum.io/reference/rpc-stellar-getoffersbyaccountid.md): This endpoint represents all offers a given account has currently open and can be used in streaming mode. Streaming mode allows you to listen for new offers for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known offer unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream offers created since your request time. - [Retrieve an Account's Operations](https://docs.tatum.io/reference/rpc-stellar-getoperationsbyaccountid.md): This endpoint represents successful operations for a given account and can be used in streaming mode. Streaming mode allows you to listen for new operations for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known operation unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream operations created since your request time. - [Retrieve an Account's Payments](https://docs.tatum.io/reference/rpc-stellar-getpaymentsbyaccountid.md): This endpoint represents successful payments for a given account and can be used in streaming mode. Streaming mode allows you to listen for new payments for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known payment unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream payments created since your request time. - [Retrieve an Account's Trades](https://docs.tatum.io/reference/rpc-stellar-gettradesbyaccountid.md): This endpoint represents all trades for a given account and can be used in streaming mode. Streaming mode allows you to listen for trades for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known trade unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream trades created since your request time. - [Retrieve an Offer's Trades](https://docs.tatum.io/reference/rpc-stellar-gettradesbyofferid.md): This endpoint represents all trades for a given offer and can be used in streaming mode. Streaming mode allows you to listen for trades for this offer as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known trade unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream trades created since your request time. - [Retrieve an Account's Transactions](https://docs.tatum.io/reference/rpc-stellar-gettransactionsbyaccountid.md): This endpoint represents successful transactions for a given account and can be used in streaming mode. Streaming mode allows you to listen for new transactions for this account as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known transaction unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream transactions created since your request time. - [List all Accounts](https://docs.tatum.io/reference/rpc-stellar-listallaccounts.md): This endpoint lists accounts by one of four filters : signer, asset, liquidity pool or sponsor. - [List all Assets](https://docs.tatum.io/reference/rpc-stellar-listallassets.md): This endpoint lists all assets. - [List All Claimable Balances](https://docs.tatum.io/reference/rpc-stellar-listallclaimablebalances.md): This endpoint lists all available claimable balances. - [List All Effects](https://docs.tatum.io/reference/rpc-stellar-listalleffects.md): This endpoint lists all effects and can be used in streaming mode. Streaming mode allows you to listen for new effects as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known effect unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream effects created since your request time. - [List All Ledgers](https://docs.tatum.io/reference/rpc-stellar-listallledgers.md): This endpoint lists all ledgers and can be used in streaming mode. Streaming mode allows you to listen for new ledgers as they close. If called in streaming mode, Horizon will start at the earliest known ledger unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream ledgers since your request time. - [List All Operations](https://docs.tatum.io/reference/rpc-stellar-listalloperations.md): This endpoint lists all Successful operations and can be used in streaming mode. Streaming mode allows you to listen for new operations as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known operation unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream operations created since your request time. - [List All Payments](https://docs.tatum.io/reference/rpc-stellar-listallpayments.md): This endpoint lists all Successful payment-related operations and can be used in streaming mode. Streaming mode allows you to listen for new payments as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known payment unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream payments created since your request time. Operations that can be returned by this endpoint include: create_account, payment, path_payment_strict_recieve, path_payment_strict_send, and account_merge . - [List All Transactions](https://docs.tatum.io/reference/rpc-stellar-listalltransactions.md): This endpoint lists all Successful transactions and can be used in streaming mode. Streaming mode allows you to listen for new transactions as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known transaction unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream transactions created since your request time. - [List Liquidity Pools](https://docs.tatum.io/reference/rpc-stellar-listliquiditypools.md): This endpoint lists all available liquidity pools. - [List Strict Receive Payment Paths](https://docs.tatum.io/reference/rpc-stellar-liststrictreceivepaymentpaths.md): The strict receive payment path endpoint lists the paths a payment can take based on the amount of an asset you want the recipient to receive. The destination asset amount stays constant, and the type and amount of an asset sent varies based on offers in the order books. For this search, Horizon loads a list of assets available to the sender (based on `source_account` or `source_assets`) and displays the possible paths from the different source assets to the destination asset. Only paths that satisfy the `destination_amount` are returned. - [List Strict Send Payment Paths](https://docs.tatum.io/reference/rpc-stellar-liststrictsendpaymentpaths.md): The strict send payment path endpoint lists the paths a payment can take based on the amount of an asset you want to send. The source asset amount stays constant, and the type and amount of an asset received varies based on offers in the order books. For this search, Horizon loads a list of assets that the recipient can receive (based on `destination_account` or `destination_assets`) and displays the possible paths from the different source assets to the destination asset. Only paths that satisfy the `source_amount` are returned. - [List Trade Aggregations](https://docs.tatum.io/reference/rpc-stellar-listtradeaggregations.md): This endpoint displays trade data based on filters set in the arguments. This is done by dividing a given time range into segments and aggregating statistics, for a given asset pair (base, counter) over each of these segments. The duration of the segments is specified with the `resolution` parameter. The start and end of the time range are given by `startTime` and `endTime` respectively, which are both rounded to the nearest multiple of `resolution` since epoch. The individual segments are also aligned with multiples of `resolution` since epoch. If you want to change this alignment, the segments can be `offset` by specifying the offset parameter. - [Retrieve Related Operations](https://docs.tatum.io/reference/rpc-stellar-lpretrieverelatedoperations.md): This endpoint represents successful operations referencing a given liquidity pool and can be used in streaming mode. Streaming mode allows you to listen for new operations referencing this liquidity pool as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known operation unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream operations created since your request time. - [Retrieve Related Transactions](https://docs.tatum.io/reference/rpc-stellar-lpretrieverelatedtransactions.md): This endpoint represents successful transactions referencing a given liquidity pool and can be used in streaming mode. Streaming mode allows you to listen for new transactions referencing this liquidity pool as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known transaction unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream transactions created since your request time. - [Retrieve a Claimable Balance](https://docs.tatum.io/reference/rpc-stellar-retrieveaclaimablebalance.md): The single claimable balance endpoint provides information on a claimable balance. - [Retrieve a Ledger](https://docs.tatum.io/reference/rpc-stellar-retrievealedger.md): The single ledger endpoint provides information on a specific ledger. - [Retrieve a Ledgers's Effects](https://docs.tatum.io/reference/rpc-stellar-retrievealedgerseffects.md): This endpoint returns the effects of a specific ledger. - [Retrieve a Ledger's Operations](https://docs.tatum.io/reference/rpc-stellar-retrievealedgersoperations.md): This endpoint returns successful operations in a specific ledger. - [Retrieve a Ledger's Payments](https://docs.tatum.io/reference/rpc-stellar-retrievealedgerspayments.md): This endpoint returns all payment-related operations in a specific ledger. Operation types that can be returned by this endpoint include: create_account, payment, path_payment, and account_merge. - [Retrieve a Ledger's Transactions](https://docs.tatum.io/reference/rpc-stellar-retrievealedgerstransactions.md): This endpoint represents successful transactions in a given ledger. - [Retrieve a Liquidity Pool](https://docs.tatum.io/reference/rpc-stellar-retrievealiquiditypool.md): The single liquidity pool endpoint provides information on a liquidity pool. - [Retrieve an Account](https://docs.tatum.io/reference/rpc-stellar-retrieveanaccount.md): The single account endpoint provides information on a specific account. The balances section in the response will also list all the trustlines this account has established, including trustlines that haven’t been authorized yet. - [Retrieve an Operation](https://docs.tatum.io/reference/rpc-stellar-retrieveanoperation.md): The single operation endpoint provides information about a specific operation. - [Retrieve an Operation's Effects](https://docs.tatum.io/reference/rpc-stellar-retrieveanoperationseffects.md): This endpoint returns the effects of a specific operation. - [Retrieve an Order Book](https://docs.tatum.io/reference/rpc-stellar-retrieveanorderbook.md): The order book endpoint provides an order book's bids and asks and can be used in [streaming](https://developers.stellar.org/docs/data/horizon/api-reference/structure/streaming) mode. When filtering for a specific order book, you must use use all six of these arguments: `base_asset_type`, `base_asset_issuer`, `base_asset_code`, `counter_asset_type`, `counter_asset_issuer`, and `counter_asset_code`. If the base or counter asset is XLM, you only need to indicate the asset type as `native` and do not need to designate the code or the issuer. - [Retrieve a Transaction](https://docs.tatum.io/reference/rpc-stellar-retrieveatransaction.md): The single transaction endpoint provides information on a specific transaction. - [Retrieve a Transaction's Effects](https://docs.tatum.io/reference/rpc-stellar-retrieveatransactionseffects.md): This endpoint returns the effects of a specific transaction. - [Retrieve a Transaction's Operations](https://docs.tatum.io/reference/rpc-stellar-retrieveatransactionsoperations.md): This endpoint returns Successful operations for a specific transaction. - [Retrieve a Transaction's Payments](https://docs.tatum.io/reference/rpc-stellar-retrieveatransactionspayments.md): This endpoint returns the payments of a specific transaction. - [Retrieve Fee Stats](https://docs.tatum.io/reference/rpc-stellar-retrievefeestats.md): The fee stats endpoint provides information about per-operation fee stats over the last 5 ledgers. - [Retrieve Related Effects](https://docs.tatum.io/reference/rpc-stellar-retrieverelatedeffects.md): This endpoint represents effects referencing a given liquidity pool and can be used in streaming mode. Streaming mode allows you to listen for new effects referencing this liquidity pool as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known effect unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream effects created since your request time. - [Retrieve Related Trades](https://docs.tatum.io/reference/rpc-stellar-retrieverelatedtrades.md): This endpoint represents successful trades fulfilled by the given liquidity pool and can be used in streaming mode. Streaming mode allows you to listen for new trades referencing this liquidity pool as they are added to the Stellar ledger. If called in streaming mode, Horizon will start at the earliest known trade unless a cursor is set, in which case it will start from that cursor. By setting the cursor value to now, you can stream trade created since your request time. - [Submit a Transaction Asynchronously](https://docs.tatum.io/reference/rpc-stellar-submitasynctransaction.md): This endpoint submits transactions to the Stellar network asynchronously. It is designed to allow users to submit transactions without blocking them while waiting for a response from Horizon. At the same time, it also provides clear response status codes from stellar-core to help understand the status of the submitted transaction. You can then use Horizon's [GET transaction endpoint](https://developers.stellar.org/docs/data/horizon/api-reference/resources/retrieve-a-transaction) to wait for the transaction to be included in a ledger and ingested by Horizon. - [Submit a Transaction](https://docs.tatum.io/reference/rpc-stellar-submitatransaction.md): This endpoint actually submits a transaction to the Stellar network. It only takes a single, required parameter: the signed transaction. Refer to the Transactions page for details on how to craft a proper one. If you submit a transaction that has already been included in a ledger, this endpoint will return the same response as would’ve been returned for the original transaction submission. This allows for safe resubmission of transactions in error scenarios, as highlighted in the error-handling guide. - [Broadcast signed XLM transaction](https://docs.tatum.io/reference/xlmbroadcast.md):Broadcast signed transaction to XLM blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Get XLM Account info](https://docs.tatum.io/reference/xlmgetaccountinfo.md):Get XLM Account detail.
- [Get XLM Account transactions](https://docs.tatum.io/reference/xlmgetaccounttx.md):List all XLM account transactions.
- [Get actual XLM fee](https://docs.tatum.io/reference/xlmgetfee.md):Get XLM Blockchain fee in 1/10000000 of XLM (stroop)
- [Get XLM Blockchain Information](https://docs.tatum.io/reference/xlmgetlastclosedledger.md):Get XLM Blockchain last closed ledger.
- [Get XLM Blockchain Ledger by sequence](https://docs.tatum.io/reference/xlmgetledger.md):⚠️ Deprecated: Get XLM Blockchain Ledger by sequence
GET /v3/xlm/ledger/{sequence}is deprecated.Use
GET /v4/data/blockchains/blockFetch the ledger details by sequence number. This endpoint returns information about a specific XLM ledger.
Get XLM Blockchain ledger for ledger sequence.
- [Get XLM Blockchain Transactions in Ledger](https://docs.tatum.io/reference/xlmgetledgertx.md):⚠️ Deprecated: Get XLM Blockchain Ledger by sequence
GET /v3/xlm/ledger/{sequence}is deprecated.Use
GET /v4/data/blockchains/blockFetch the ledger details by sequence number. This endpoint returns information about a specific XLM ledger.
Get XLM Blockchain ledger for ledger sequence.
- [Get XLM Transaction by hash](https://docs.tatum.io/reference/xlmgettransaction.md):⚠️ Deprecated: Get XLM Transaction by hash
GET /v3/xlm/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch the XLM transaction details by transaction hash. This endpoint returns information about a specific transaction.
Get XLM Transaction by transaction hash.
- [Send XLM from address to address](https://docs.tatum.io/reference/xlmtransferblockchain.md):Send XLM from account to account. It is possbile to send native XLM asset, or any other custom asset present on the network.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Create / Update / Delete XLM trust line between accounts to transfer private assets. By creating trustline for the first time, the asset is created automatically and can be used in the transactions.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Generate XLM account. Tatum does not support HD wallet for XLM, only specific address and private key can be generated.
- [Sui](https://docs.tatum.io/reference/rpc-sui.md): SUI is a high-performance, Move-based Layer 1 blockchain designed for parallel transaction execution and built to deliver low-latency, high-throughput applications at scale. - [sui_dryRunTransactionBlock - Sui](https://docs.tatum.io/reference/rpc-sui-sui_dryruntransactionblock.md): Return transaction execution effects including the gas cost summary, while the effects are not committed to the chain. - [sui_executeTransactionBlock - Sui](https://docs.tatum.io/reference/rpc-sui-sui_executetransactionblock.md): Execute the transaction and wait for results if desired. Request types: 1. WaitForEffectsCert: waits for TransactionEffectsCert and then return to client. This mode is a proxy for transaction finality. 2. WaitForLocalExecution: waits for TransactionEffectsCert and make sure the node executed the transaction locally before returning the client. The local execution makes sure this node is aware of this transaction when client fires subsequent queries. However if the node fails to execute the transaction locally in a timely manner, a bool type in the response is set to false to indicated the case. request_type is default to be `WaitForEffectsCert` unless options.show_events or options.show_effects is true - [sui_getChainIdentifier - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getchainidentifier.md): Return the chain's identifier - [sui_getCheckpoint - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getcheckpoint.md): Return a checkpoint - [sui_getCheckpoints - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getcheckpoints.md): Return paginated list of checkpoints - [sui_getEvents - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getevents.md): Return transaction events. - [sui_getLatestCheckpointSequenceNumber - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getlatestcheckpointsequencenumber.md): Return the sequence number of the latest checkpoint that has been executed - [sui_getLoadedChildObjects - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getloadedchildobjects.md) - [sui_getMoveFunctionArgTypes - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getmovefunctionargtypes.md): Return the argument types of a Move function, based on normalized Type. - [sui_getNormalizedMoveFunction - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getnormalizedmovefunction.md): Return a structured representation of Move function - [sui_getNormalizedMoveModule - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getnormalizedmovemodule.md): Return a structured representation of Move module - [sui_getNormalizedMoveModulesByPackage - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getnormalizedmovemodulesbypackage.md): Return structured representations of all modules in the given package - [sui_getNormalizedMoveStruct - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getnormalizedmovestruct.md): Return a structured representation of Move struct - [sui_getObject - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getobject.md): Return the object information for a specified object - [sui_getProtocolConfig - Sui](https://docs.tatum.io/reference/rpc-sui-sui_getprotocolconfig.md): Return the protocol config table for the given version number. If the version number is not specified, If none is specified, the node uses the version of the latest epoch it has processed. - [sui_getTotalTransactionBlocks - Sui](https://docs.tatum.io/reference/rpc-sui-sui_gettotaltransactionblocks.md): Return the total number of transactions known to the server. - [sui_getTransactionBlock - Sui](https://docs.tatum.io/reference/rpc-sui-sui_gettransactionblock.md): Return the transaction response object. - [sui_tryGetPastObject - Sui](https://docs.tatum.io/reference/rpc-sui-sui_trygetpastobject.md): Note there is no software-level guarantee/SLA that objects with past versions can be retrieved by this API, even if the object and version exists/existed. The result may vary across nodes depending on their pruning policies. Return the object information for a specified version - [suix_getAllBalances - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getallbalances.md): Return the total coin balance for all coin type, owned by the address owner. - [suix_getAllCoins - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getallcoins.md): Return all Coin objects owned by an address. - [suix_getBalance - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getbalance.md): Return the total coin balance for one coin type, owned by the address owner. - [suix_getCoinMetadata - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getcoinmetadata.md): Return metadata(e.g., symbol, decimals) for a coin - [suix_getCoins - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getcoins.md): Return all Coin<`coin_type`> objects owned by an address. - [suix_getCommitteeInfo - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getcommitteeinfo.md): Return the committee information for the asked `epoch`. - [suix_getDynamicFieldObject - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getdynamicfieldobject.md): Return the dynamic field object information for a specified object - [suix_getDynamicFields - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getdynamicfields.md): Return the list of dynamic field objects owned by an object. - [suix_getOwnedObjects - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getownedobjects.md): Return the list of objects owned by an address. Note that if the address owns more than `QUERY_MAX_RESULT_LIMIT` objects, the pagination is not accurate, because previous page may have been updated when the next page is fetched. Please use suix_queryObjects if this is a concern. - [suix_getReferenceGasPrice - Sui](https://docs.tatum.io/reference/rpc-sui-suix_getreferencegasprice.md): Return the reference gas price for the network - [suix_getTotalSupply - Sui](https://docs.tatum.io/reference/rpc-sui-suix_gettotalsupply.md): Return total supply for a coin - [suix_queryEvents - Sui](https://docs.tatum.io/reference/rpc-sui-suix_queryevents.md): Return list of events for a specified query criteria. - [suix_queryTransactionBlocks - Sui](https://docs.tatum.io/reference/rpc-sui-suix_querytransactionblocks.md): Return list of transactions for a specified query criteria. - [suix_resolveNameServiceAddress - Sui](https://docs.tatum.io/reference/rpc-sui-suix_resolvenameserviceaddress.md): Return the resolved address given resolver and name - [suix_resolveNameServiceNames - Sui](https://docs.tatum.io/reference/rpc-sui-suix_resolvenameservicenames.md): Return the resolved names given address, if multiple names are resolved, the first one is the primary name. - [unsafe_mergeCoins - Sui](https://docs.tatum.io/reference/rpc-sui-unsafe_mergecoins.md): Create an unsigned transaction to merge multiple coins into one coin. - [unsafe_requestWithdrawStake - Sui](https://docs.tatum.io/reference/rpc-sui-unsafe_requestwithdrawstake.md): Withdraw stake from a validator's staking pool. - [unsafe_splitCoinEqual - Sui](https://docs.tatum.io/reference/rpc-sui-unsafe_splitcoinequal.md): Create an unsigned transaction to split a coin object into multiple equal-size coins. - [unsafe_transferObject - Sui](https://docs.tatum.io/reference/rpc-sui-unsafe_transferobject.md): Create an unsigned transaction to transfer an object from one address to another. The object's type must allow public transfers - [unsafe_transferSui - Sui](https://docs.tatum.io/reference/rpc-sui-unsafe_transfersui.md): Create an unsigned transaction to send SUI coin object to a Sui address. The SUI object is also used as the gas object. - [Sui - gRPC](https://docs.tatum.io/reference/sui-grpc.md): Sui gRPC is a high-performance, type-safe interface designed for power users, indexers, and decentralized applications. Utilizing Protocol Buffers and HTTP/2, it provides low-latency access to the Sui blockchain, replacing the deprecated JSON-RPC for full node interactions. - [Tezos](https://docs.tatum.io/reference/rpc-tezos.md): Discover Tezos, a self-amending blockchain with on-chain governance. Build decentralized applications using its RPC gateway and flexible architecture. - [getBigMapValue](https://docs.tatum.io/reference/rpc-tezos-getbigmapvalue.md): Tezos RPC - [getBlock](https://docs.tatum.io/reference/rpc-tezos-getblock.md): Tezos RPC - [getBlockHash](https://docs.tatum.io/reference/rpc-tezos-getblockhash.md): Tezos RPC - [getBlockHashes](https://docs.tatum.io/reference/rpc-tezos-getblockhashes.md): Tezos RPC - [getBlockHeader](https://docs.tatum.io/reference/rpc-tezos-getblockheader.md): Tezos RPC - [getBlocksHead](https://docs.tatum.io/reference/rpc-tezos-getblockshead.md): Tezos RPC - [getBlockShell](https://docs.tatum.io/reference/rpc-tezos-getblockshell.md): Tezos RPC - [getChainId](https://docs.tatum.io/reference/rpc-tezos-getchainid.md): Tezos RPC - [getConfig](https://docs.tatum.io/reference/rpc-tezos-getconfig.md): Tezos RPC - [getConractTickets](https://docs.tatum.io/reference/rpc-tezos-getconracttickets.md): Tezos RPC - [getConstants](https://docs.tatum.io/reference/rpc-tezos-getconstants.md): Tezos RPC - [getContract](https://docs.tatum.io/reference/rpc-tezos-getcontract.md): Tezos RPC - [getContractBalance](https://docs.tatum.io/reference/rpc-tezos-getcontractbalance.md): Tezos RPC - [getContractBalanceAndFrozenBonds](https://docs.tatum.io/reference/rpc-tezos-getcontractbalanceandfrozenbonds.md): Tezos RPC - [getContractCounter](https://docs.tatum.io/reference/rpc-tezos-getcontractcounter.md): Tezos RPC - [getContractDelegate](https://docs.tatum.io/reference/rpc-tezos-getcontractdelegate.md): Tezos RPC - [getContractEntrypoint](https://docs.tatum.io/reference/rpc-tezos-getcontractentrypoint.md): Tezos RPC - [getContractEntrypoints](https://docs.tatum.io/reference/rpc-tezos-getcontractentrypoints.md): Tezos RPC - [getContractManagerKey](https://docs.tatum.io/reference/rpc-tezos-getcontractmanagerkey.md): Tezos RPC - [getcontracttickets](https://docs.tatum.io/reference/rpc-tezos-getcontracttickets.md): Tezos RPC - [getErrorsSchema](https://docs.tatum.io/reference/rpc-tezos-geterrorsschema.md): Tezos RPC - [getHistoryMode](https://docs.tatum.io/reference/rpc-tezos-gethistorymode.md): Tezos RPC - [getInvalidBlocks](https://docs.tatum.io/reference/rpc-tezos-getinvalidblocks.md): Tezos RPC - [getLevelsCaboose](https://docs.tatum.io/reference/rpc-tezos-getlevelscaboose.md): Tezos RPC - [getLevelsCheckpoint](https://docs.tatum.io/reference/rpc-tezos-getlevelscheckpoint.md): Tezos RPC - [getLevelsSavepoint](https://docs.tatum.io/reference/rpc-tezos-getlevelssavepoint.md): Tezos RPC - [getNetworkDal](https://docs.tatum.io/reference/rpc-tezos-getnetworkdal.md): Tezos RPC - [getNodeVersion](https://docs.tatum.io/reference/rpc-tezos-getnodeversion.md): Tezos RPC - [getOperationHashes](https://docs.tatum.io/reference/rpc-tezos-getoperationhashes.md): Tezos RPC - [getOperations](https://docs.tatum.io/reference/rpc-tezos-getoperations.md): Tezos RPC - [getProtocol](https://docs.tatum.io/reference/rpc-tezos-getprotocol.md): Tezos RPC - [getProtocolEnvironment](https://docs.tatum.io/reference/rpc-tezos-getprotocolenvironment.md): Tezos RPC - [getProtocols](https://docs.tatum.io/reference/rpc-tezos-getprotocols.md): Tezos RPC - [getUserActivatedProtocolOverrides](https://docs.tatum.io/reference/rpc-tezos-getuseractivatedprotocoloverrides.md): Tezos RPC - [getUserActivatedUpgrades](https://docs.tatum.io/reference/rpc-tezos-getuseractivatedupgrades.md): Tezos RPC - [injectBlock](https://docs.tatum.io/reference/rpc-tezos-injectblock.md): Tezos RPC - [injectOperation](https://docs.tatum.io/reference/rpc-tezos-injectoperation.md): Tezos RPC - [injectProtocol](https://docs.tatum.io/reference/rpc-tezos-injectprotocol.md): Tezos RPC - [isBootstrapped](https://docs.tatum.io/reference/rpc-tezos-isbootstrapped.md): Tezos RPC - [simulateOperation](https://docs.tatum.io/reference/rpc-tezos-simulateoperation.md): Tezos RPC - [The Open Network (TON)](https://docs.tatum.io/reference/rpc-ton.md): Explore The Open Network (TON), a high-performance blockchain designed for fast, scalable decentralized applications. Build using its RPC gateway - [getBlockTransactionsExt](https://docs.tatum.io/reference/get_block_transactions_ext.md): Get transactions of the given block. - [sendBoc](https://docs.tatum.io/reference/rpc-ron-send_boc.md): Send serialized boc file: fully packed and serialized external message to blockchain. - [detectAddress](https://docs.tatum.io/reference/rpc-ton-detect_address.md): Get all possible address forms. - [estimateFee](https://docs.tatum.io/reference/rpc-ton-estimate_fee.md): Estimate fees required for query processing. *body*, *init-code* and *init-data* accepted in serialized format (b64-encoded). - [getAddressBalance](https://docs.tatum.io/reference/rpc-ton-get_address_balance.md): Get balance (in nanotons) of a given address. - [getAddressInformation](https://docs.tatum.io/reference/rpc-ton-get_address_information.md): Get basic information about the address: balance, code, data, last_transaction_id. - [getAddress](https://docs.tatum.io/reference/rpc-ton-get_address.md): Get state of a given address. State can be either *unitialized*, *active* or *frozen*. - [gettBlockHeader](https://docs.tatum.io/reference/rpc-ton-get_block_header.md): Get metadata of a given block. - [getBlockTransactions](https://docs.tatum.io/reference/rpc-ton-get_block_transactions.md): Get transactions of the given block. - [getConfigAll](https://docs.tatum.io/reference/rpc-ton-get_config_all.md): Get cell with full config. - [getConfigParam](https://docs.tatum.io/reference/rpc-ton-get_config_param.md): Get config by id. - [getConsensusBlock](https://docs.tatum.io/reference/rpc-ton-get_consensus_block.md): Get consensus block and its update timestamp. - [getExtendedAddressInformation](https://docs.tatum.io/reference/rpc-ton-get_extended_address_information.md): Similar to previous one but tries to parse additional information for known contract types. This method is based on tonlib's function *getAccountState*. For detecting wallets we recommend to use *getWalletInformation*. - [getMasterchainBlockSignatures](https://docs.tatum.io/reference/rpc-ton-get_masterchain_block_signatures.md): Get up-to-date masterchain state. - [getMasterchainInfo](https://docs.tatum.io/reference/rpc-ton-get_masterchain.md): Get up-to-date masterchain state. - [getOutMsgQueueSizes](https://docs.tatum.io/reference/rpc-ton-get_out_msg_queue_sizes_getoutmsgqueuesizes_get.md): Get info with current sizes of messages queues by shards. - [getShardBlockProof](https://docs.tatum.io/reference/rpc-ton-get_shard_block_proof.md): Get merkle proof of shardchain block. - [getShards](https://docs.tatum.io/reference/rpc-ton-get_shards.md): Get shards information. - [getTokenData](https://docs.tatum.io/reference/rpc-ton-get_token_data.md): Get NFT or Jetton information. - [getTransactions](https://docs.tatum.io/reference/rpc-ton-get_transactions_gettransactions_get.md): Get transaction history of a given address. - [getTryLocateResultTx](https://docs.tatum.io/reference/rpc-ton-get_try_locate_result_tx.md): Same as previous. Locate outcoming transaction of *destination* address by incoming message - [getTryLocateSourceTx](https://docs.tatum.io/reference/rpc-ton-get_try_locate_source_tx.md): Locate incoming transaction of *source* address by outcoming message. - [getTryLocateTx](https://docs.tatum.io/reference/rpc-ton-get_try_locate_tx.md): Locate outcoming transaction of *destination* address by incoming message. - [getWalletInformation](https://docs.tatum.io/reference/rpc-ton-get_wallet_information.md): Retrieve wallet information. This method parses contract state and currently supports more wallet types than getExtendedAddressInformation: simple wallet, standart wallet, v3 wallet, v4 wallet. - [jsonrpcHandler](https://docs.tatum.io/reference/rpc-ton-jsonrpc_handler.md): All methods in the API are available through JSON-RPC protocol ([spec](https://www.jsonrpc.org/specification)). - [lookupBlock](https://docs.tatum.io/reference/rpc-ton-lookup_block.md): Look up block by either *seqno*, *lt* or *unixtime*. - [packAddress](https://docs.tatum.io/reference/rpc-ton-pack_address.md): Convert an address from raw to human-readable format. - [runGetMethod](https://docs.tatum.io/reference/rpc-ton-run_get_method.md): Run get method on smart contract. - [sendBocReturnHash](https://docs.tatum.io/reference/rpc-ton-send_boc_return_hash.md): Send serialized boc file: fully packed and serialized external message to blockchain. The method returns message hash. - [sendQuery](https://docs.tatum.io/reference/rpc-ton-send_query.md): Send query - unpacked external message. This method takes address, body and init-params (if any), packs it to external message and sends to network. All params should be boc-serialized. - [unpackAddress](https://docs.tatum.io/reference/rpc-ton-unpack_address.md): Convert an address from human-readable to raw format. - [Tron](https://docs.tatum.io/reference/rpc-tron.md): Explore Tron, a blockchain optimized for content sharing and decentralized applications. Build fast, low-cost dApps using its RPC gateway. - [buildTransaction](https://docs.tatum.io/reference/rpc-tron-buildtransaction.md): Create a transaction. This method supports different contract types including TransferContract, TransferAssetContract, CreateSmartContract, and TriggerSmartContract. The parameters provided in the request determine which type of transaction is created. - [eth_blockNumber - Tron](https://docs.tatum.io/reference/rpc-tron-eth_blocknumber.md): The **eth_blockNumber** method is part of the Tron JSON-RPC API, which is used to interact with the Tron blockchain. This method is particularly useful for various use cases within the blockchain ecosystem, including but not limited to: Monitoring Blockchain Health: By regularly checking the latest block number, developers can monitor the health and activity of the Tron blockchain. This can be crucial for applications that rely on the blockchain for their operations, as it helps in identifying any potential issues or delays in block production. Synchronization Checks: For applications that interact with the Tron blockchain, knowing the latest block number can be essential for synchronization purposes. It helps in ensuring that the application's data is up-to-date with the blockchain's state. Transaction Verification: When submitting transactions to the blockchain, knowing the current block number can be useful for setting appropriate gas prices and for verifying transaction confirmations. - [eth_call - Tron](https://docs.tatum.io/reference/rpc-tron-eth_call.md): The **eth_call** method in Tron's JSON-RPC API is used to execute a new message call immediately without creating a transaction on the blockchain. This method is particularly useful for testing and debugging smart contracts, as it allows developers to simulate the execution of contract methods without actually sending transactions to the network. This can help in identifying issues or understanding the behavior of contracts without incurring any gas costs or affecting the blockchain state. Please check the common use cases: Testing Smart Contracts: Before deploying a smart contract, developers can use eth_call to test its functionality and ensure it behaves as expected. Debugging: It can be used to debug smart contracts by simulating transactions and observing the state changes or return values without affecting the live contract. Estimating Gas Costs: Although eth_call does not actually send a transaction, it can be used to estimate the gas costs of a transaction by simulating its execution. - [eth_chainId - Tron](https://docs.tatum.io/reference/rpc-tron-eth_chainid.md): The **eth_chainId** method is part of the Tron JSON-RPC API, specifically designed to return the current network or chain ID. This method is crucial for ensuring the uniqueness of transactions across different Tron networks, as it helps in preventing replay attacks by distinguishing between transactions intended for different networks. The chain ID was introduced as part of EIP-155 to address the issue of transaction replay attacks across different Tron networks. - [eth_estimateGas - Tron](https://docs.tatum.io/reference/rpc-tron-eth_estimategas.md): The **eth_estimateGas** method in Tron's JSON-RPC API is used to estimate the amount of gas that would be required to execute a transaction without actually sending it. This method is particularly useful for determining the appropriate gas limit for a transaction before it is submitted to the network, helping to avoid out-of-gas errors and ensuring that transactions are processed efficiently. - [eth_feeHistory - Tron](https://docs.tatum.io/reference/rpc-tron-eth_feehistory.md): The **eth_feeHistory** retrieves historical gas fee data, providing insights into gas price trends and block utilization over time. This method is valuable for estimating transaction fees and understanding network congestion. - [eth_gasPrice - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gasprice.md): The **eth_gasPrice** method is part of the Tron JSON-RPC API, which is used to interact with the Tron blockchain. This method specifically returns the current gas price on the Tron network in wei. Wei is the smallest denomination of ether, the cryptocurrency used on the Tron network. The gas price is a critical parameter for transactions on the Tron network, as it determines how much a transaction is willing to pay per unit of gas, which is a measure of computational effort. - [eth_getBalance - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getbalance.md): The **eth_getBalance** method is an Tron JSON-RPC method that allows you to retrieve the Ether balance of a specified address. This method can be used to query the balance of any Tron address, whether it is a contract or an externally owned account (EOA). A common use case for this method is to display the current balance of a user's account in a wallet application or a decentralised application (DApp). - [eth_getBlockByHash - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getblockbyhash.md): The **eth_getBlockByHash** is an Tron JSON-RPC method that allows developers to query a specific block in the Tron blockchain by its block hash. This method can be used in various scenarios, such as analysing historical transactions, validating the state of the blockchain, or monitoring the progress of mining activities. - [eth_getBlockByNumber - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getblockbynumber.md): The **eth_getBlockByNumber** is an Tron JSON-RPC method that allows developers to query a specific block in the Tron blockchain by its block number. This method can be used in various scenarios, such as analyzing historical transactions, validating the state of the blockchain, or monitoring the progress of mining activities. - [eth_getBlockTransactionCountByHash - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getblocktransactioncountbyhash.md): The **eth_getBlockTransactionCountByHash** is an Tron RPC method used to fetch the number of transactions in a block by the block's hash. It is useful when you want to know the total number of transactions included in a specific block and don't want to retrieve the entire block data. This method can be used in various scenarios, such as monitoring the network activity or estimating transaction confirmation times. - [eth_getBlockTransactionCountByNumber - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getblocktransactioncountbynumber.md): The **eth_getBlockTransactionCountByNumber** Tron JSON-RPC method allows you to retrieve the number of transactions in a specified block. This method is particularly useful when you need to analyze the transaction activity of a specific block. You can use it to gain insights into network usage, analyze the impact of specific events on the Tron network, or monitor transaction congestion in certain blocks. - [eth_getCode - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getcode.md): The **eth_getCode** method is part of the Tron JSON-RPC API and is used to retrieve the contract code (bytecode) of an account at a specific block number. This method is particularly useful for developers who need to examine the bytecode of a deployed contract, verify the integrity of a deployed contract, analyze contract bytecode for security vulnerabilities, or debug a smart contract. - [eth_getLogs - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getlogs.md): The eth_getLogs method is an Tron JSON-RPC method that allows developers to query logs generated by the Tron network, specifically event logs emitted by smart contracts. These logs are an essential part of the Tron ecosystem as they provide a way for developers to monitor contract events and track contract state changes. This method is particularly useful when building decentralized applications (dApps) that rely on events emitted by smart contracts, as it enables developers to retrieve logs based on specific filter criteria. By using eth_getLogs, developers can efficiently track and react to events happening on the Tron blockchain. - [eth_getProof - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getproof.md): The **eth_getProof** is an Tron JSON-RPC method that retrieves the Merkle-Patricia proof for an account, storage key-value pairs, and account transaction count. It allows developers to verify the state of an account or storage value at a specific block without needing the entire Tron state trie. This method is particularly useful for light clients or off-chain applications that require proof of an account's state or specific storage values. - [eth_getStorageAt - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getstorageat.md): The **eth_getStorageAt** is an Tron JSON-RPC method that allows you to query the storage value of a contract at a given position. It can be used to inspect the internal state of a smart contract. This method is particularly useful for developers, auditors, and analysts who want to examine contract storage values for various purposes, such as debugging, verifying contract behavior, or analyzing data. - [eth_getTransactionByBlockHashAndIndex - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gettransactionbyblockhashandindex.md): The **eth_getTransactionByBlockHashAndIndex** is an Tron JSON-RPC method that allows you to fetch the transaction details based on the block hash and the index of the transaction within that block. This method can be useful when you want to retrieve transaction details for a specific transaction without knowing its transaction hash. - [eth_getTransactionByBlockNumberAndIndex - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gettransactionbyblocknumberandindex.md): The eth_getTransactionByBlockHashAndIndex is an Tron JSON-RPC method that allows you to fetch the transaction details based on the block hash and the index of the transaction within that block. This method can be useful when you want to retrieve transaction details for a specific transaction without knowing its transaction hash. - [eth_getTransactionByHash - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gettransactionbyhash.md): The **eth_getTransactionByHash** is an Tron JSON-RPC method that allows you to query transaction details based on its hash. This method is useful when you want to retrieve information about a specific transaction, such as its sender, receiver, value, and more. Common use cases include tracking transaction status, monitoring incoming transactions, or analyzing historical transaction data. - [eth_getTransactionCount - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gettransactioncount.md): The **eth_getTransactionCount** method is an Tron JSON-RPC method that retrieves the number of transactions sent from a given address. It is a useful method for developers who need to keep track of an account's nonce value to avoid transaction collisions or incorrect order of execution. The nonce value is essential for ensuring transaction uniqueness and preventing replay attacks. - [eth_getTransactionReceipt - Tron](https://docs.tatum.io/reference/rpc-tron-eth_gettransactionreceipt.md): The **eth_getTransactionReceipt** is an Tron JSON-RPC method that retrieves the transaction receipt of a given transaction hash. This method is particularly useful when you need to obtain detailed information about a transaction's execution, such as its status (success or failure), gas usage, and logs (events). Common use cases include checking the status of a transaction after it has been mined or inspecting the events emitted by a smart contract during a specific transaction. - [eth_getUncleCountByBlockHash - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getunclecountbyblockhash.md): The **eth_getUncleCountByBlockHash** method is an Tron JSON-RPC method that returns the number of uncles in a specified block by its hash. This method can be useful for gathering information about the performance of the Tron network and to analyse the security of the blockchain. Uncles are blocks that are not included in the main blockchain but are still valid, and they contribute to the overall security and decentralisation of the Tron network. The inclusion of uncles helps prevent centralisation and ensures the mining process remains competitive. - [eth_getUncleCountByBlockNumber - Tron](https://docs.tatum.io/reference/rpc-tron-eth_getunclecountbyblocknumber.md): The **eth_getUncleCountByBlockNumber** is an Tron JSON-RPC method that allows you to fetch the number of uncles in a block based on the block number. This method can be useful when you want to retrieve the number of uncles in a block without knowing the block hash. - [eth_maxPriorityFeePerGas - Tron](https://docs.tatum.io/reference/rpc-tron-eth_maxpriorityfeepergas.md): The **eth_maxPriorityFeePerGas** RPC method is specifically designed to return the maximum priority fee per gas that is needed to be included in a block. This method is crucial for developers and users interacting with the Tron network, as it provides insights into the current gas fees required for transactions to be processed efficiently. - [eth_sendRawTransaction - Tron](https://docs.tatum.io/reference/rpc-tron-eth_sendrawtransaction.md): The **eth_sendRawTransaction** RPC method is used to facilitate the transmission of a signed and serialized Tron transaction onto the network. This approach proves invaluable when seeking complete oversight of the signing procedure, especially when employing hardware wallets, cold storage solutions, or custom signing libraries. Its versatility shines through in multiple scenarios, including Ether transfers, smart contract interactions, and contract deployments. - [web3_clientVersion - Tron](https://docs.tatum.io/reference/rpc-tron-web3_clientversion.md): The **web3_clientVersion** method is part of the Tron JSON-RPC API, specifically designed to return the current version of the Tron client being used. This method is particularly useful for debugging or when you need to ensure compatibility with specific client versions. - [CreateAccount](https://docs.tatum.io/reference/rpc-tron-account-createaccount.md): Activate an account. Uses an already activated account to activate a new account. Users have to generate an account locally with wallet-cli or others SDKs like TronWeb, and then use this API to activate the account generated, or just simply transfer TRX to it. This endpoint supports both POST and GET methods. - [GetAccount](https://docs.tatum.io/reference/rpc-tron-account-getaccount.md): Query information about an account, including TRX balance, TRC-10 balances, stake information and vote information and permissions etc. This endpoint supports both POST and GET methods. - [UnfreezeBalance](https://docs.tatum.io/reference/rpc-tron-account-resources-unfreezebalance.md): Unstake the TRX staked during Stake1.0, release the obtained bandwidth or energy and TP. This operation will cause automatically cancel all votes. This endpoint supports both POST and GET methods. - [AccountPermissionUpdate](https://docs.tatum.io/reference/rpc-tron-accountpermissionupdate.md): Update the account's permission. This endpoint supports both POST and GET methods. - [BroadcastHex](https://docs.tatum.io/reference/rpc-tron-broadcasthex.md): Broadcast the protobuf encoded transaction hex string after sign This endpoint supports both POST and GET methods. - [BroadcastTransaction](https://docs.tatum.io/reference/rpc-tron-broadcasttransaction.md): Broadcast the signed transaction This endpoint supports both POST and GET methods. - [CancelAllUnfreezeV2](https://docs.tatum.io/reference/rpc-tron-cancelallunfreezev2.md): Cancel unstakings, all unstaked funds still in the waiting period will be re-staked, all unstaked funds that exceeded the 14-day waiting period will be automatically withdrawn to the owner’s account This endpoint supports both POST and GET methods. - [ClearAbi](https://docs.tatum.io/reference/rpc-tron-clearabi.md): To clear the ABI info of a smart contract. This endpoint supports both POST and GET methods. - [CreateAssetIssue](https://docs.tatum.io/reference/rpc-tron-createassetissue.md): Issue a TRC10 token. This endpoint supports both POST and GET methods. - [CreateShieldedContractParameters](https://docs.tatum.io/reference/rpc-tron-createshieldedcontractparameters.md): Create shielded contract parameters. This endpoint supports both POST and GET methods. - [CreateSpendAuthSig](https://docs.tatum.io/reference/rpc-tron-createspendauthsig.md): Note:To ensure security, Trongrid has disabled this interface service, please use the service provided by the local node. This endpoint supports both POST and GET methods. - [CreateTransaction](https://docs.tatum.io/reference/rpc-tron-createtransaction.md): Create a TRX transfer transaction. If to_address does not exist, then create the account on the blockchain. This endpoint supports both POST and GET methods. - [CreateWitness](https://docs.tatum.io/reference/rpc-tron-createwitness.md): Apply to become a super representative candidate. This endpoint supports both POST and GET methods. - [DelegateResource](https://docs.tatum.io/reference/rpc-tron-delegateresource.md): Delegate bandwidth or energy resources to other accounts in Stake2.0. This endpoint supports both POST and GET methods. - [EstimateEnergy](https://docs.tatum.io/reference/rpc-tron-estimateenergy.md): Estimate the energy required for the successful execution of smart contract transactions or deploying a contract This endpoint supports both POST and GET methods. - [ExchangeCreate](https://docs.tatum.io/reference/rpc-tron-exchangecreate.md): Creates a trading pair. This endpoint supports both POST and GET methods. - [ExchangeInject](https://docs.tatum.io/reference/rpc-tron-exchangeinject.md): Injects capital into the transaction. The purpose of injecting capital into the trading pair is to prevent price fluctuation from affecting the transaction. This endpoint supports both POST and GET methods. - [ExchangeTransaction](https://docs.tatum.io/reference/rpc-tron-exchangetransaction.md): Participate the transaction of exchange pair This endpoint supports both POST and GET methods. - [ExchangeWithdraw](https://docs.tatum.io/reference/rpc-tron-exchangewithdraw.md): Withdraws the transaction pair. This endpoint supports both POST and GET methods. - [FreezeBalanceV2](https://docs.tatum.io/reference/rpc-tron-freezebalancev2.md): In Stake2.0, stake an amount of TRX to obtain bandwidth or energy, and obtain equivalent TRON Power(TP) according to the staked amount This endpoint supports both POST and GET methods. - [GetAccountBalance](https://docs.tatum.io/reference/rpc-tron-getaccountbalance.md): Get the account balance in a specific block.(Note: At present, the interface data can only be queried through the following official nodes 13.228.119.63 & 18.139.193.235 & 18.141.79.38 & 18.139.248.26) This endpoint supports both POST and GET methods. - [GetAccountNet](https://docs.tatum.io/reference/rpc-tron-getaccountnet.md): Query bandwidth information. This endpoint supports both POST and GET methods. - [GetAccountResource](https://docs.tatum.io/reference/rpc-tron-getaccountresource.md): Query the resource information of an account(bandwidth,energy,etc) This endpoint supports both POST and GET methods. - [GetAkFromAsk](https://docs.tatum.io/reference/rpc-tron-getakfromask.md): Note:To ensure security, Trongrid has disabled this interface service, please use the service provided by the local node. This endpoint supports both POST and GET methods. - [GetAssetIssueByAccount](https://docs.tatum.io/reference/rpc-tron-getassetissuebyaccount.md): Query the TRC10 token information issued by an account. This endpoint supports both POST and GET methods. - [GetAssetIssueById](https://docs.tatum.io/reference/rpc-tron-getassetissuebyid.md): Query a token by token id. Returns the token object, which contains the token name. This endpoint supports both POST and GET methods. - [GetAssetIssueByName](https://docs.tatum.io/reference/rpc-tron-getassetissuebyname-copy.md): Query a token by name, returns token info. This endpoint supports both POST and GET methods. - [GetAssetIssueList](https://docs.tatum.io/reference/rpc-tron-getassetissuelist.md): Query the list of all the TRC10 tokens. This endpoint supports both POST and GET methods. - [GetAssetIssueListByName](https://docs.tatum.io/reference/rpc-tron-getassetissuelistbyname-copy.md): Query the list of all the TRC10 tokens by a name. This endpoint supports both POST and GET methods. - [GetAvailableUnfreezeCount](https://docs.tatum.io/reference/rpc-tron-getavailableunfreezecount.md): Remaining times of executing unstake operation in Stake2.0 This endpoint supports both POST and GET methods. - [GetBandwidthPrices](https://docs.tatum.io/reference/rpc-tron-getbandwidthprices.md): Query historical bandwidth unit price This endpoint supports both POST and GET methods. - [GetBlock](https://docs.tatum.io/reference/rpc-tron-getblock.md): Query block header information or entire block information according to block height or block hash This endpoint supports both POST and GET methods. - [GetBlockBalance](https://docs.tatum.io/reference/rpc-tron-getblockbalance.md): Get all balance change operations in a block.(Note: At present, the interface data can only be queried through the following official nodes 13.228.119.63 & 18.139.193.235&18.141.79.38 &18.139.248.26) This endpoint supports both POST and GET methods. - [GetBlockById](https://docs.tatum.io/reference/rpc-tron-getblockbyid.md): Query block by ID(block hash). This endpoint supports both POST and GET methods. - [GetBlockByLimitNext](https://docs.tatum.io/reference/rpc-tron-getblockbylimitnext.md): Returns the list of Block Objects included in the 'Block Height' range specified. This endpoint supports both POST and GET methods. - [GetBurnTRX](https://docs.tatum.io/reference/rpc-tron-getburntrx.md): Query the amount of TRX burned due to on-chain transaction fees since [No. 54 Committee Proposal ](https://tronscan.org/#/proposal/54) took effect This endpoint supports both POST and GET methods. - [GetCanDelegatedMaxSize](https://docs.tatum.io/reference/rpc-tron-getcandelegatedmaxsize.md): In Stake2.0, query the amount of delegatable resources share of the specified resource type for an address, unit is sun. This endpoint supports both POST and GET methods. - [GetCanWithdrawUnfreezeAmount](https://docs.tatum.io/reference/rpc-tron-getcanwithdrawunfreezeamount.md): Query the withdrawable balance at the specified timestamp In Stake2.0 This endpoint supports both POST and GET methods. - [GetContractInfo](https://docs.tatum.io/reference/rpc-tron-getcontractinfo.md): Queries a contract's information from the blockchain. The difference from the `wallet/getcontract` interface is that this interface returns not only the `bytecode` but also the `runtime bytecode` of the contract. Compared with `bytecode`, `runtime bytecode` does not contain constructor and constructor parameter information. This endpoint supports both POST and GET methods. - [GetDelegatedResource](https://docs.tatum.io/reference/rpc-tron-getdelegatedresource.md): Returns all resources delegations during stake1.0 phase from an account to another account. The fromAddress can be retrieved from the GetDelegatedResourceAccountIndex API. This endpoint supports both POST and GET methods. - [GetDelegatedResourceAccountIndex](https://docs.tatum.io/reference/rpc-tron-getdelegatedresourceaccountindex.md): Query the resource delegation by an account during stake1.0 phase. i.e. list all addresses that have delegated resources to an account. This endpoint supports both POST and GET methods. - [GetDelegatedResourceAccountIndexV2](https://docs.tatum.io/reference/rpc-tron-getdelegatedresourceaccountindexv2.md): In Stake2.0, query the resource delegation index by an account. Two lists will return, one is the list of addresses the account has delegated its resources(toAddress), and the other is the list of addresses that have delegated resources to the account(fromAddress). This endpoint supports both POST and GET methods. - [GetDelegatedResourceV2](https://docs.tatum.io/reference/rpc-tron-getdelegatedresourcev2.md): In Stake2.0, query the detail of resource share delegated from fromAddress to toAddress This endpoint supports both POST and GET methods. - [GetDiversifier](https://docs.tatum.io/reference/rpc-tron-getdiversifier.md): Get the diversifier This endpoint supports both POST and GET methods. - [GetEnergyPrices](https://docs.tatum.io/reference/rpc-tron-getenergyprices.md): Query historical energy unit price This endpoint supports both POST and GET methods. - [GetExpandedSpendingKey](https://docs.tatum.io/reference/rpc-tron-getexpandedspendingkey.md): Note:To ensure security, Trongrid has disabled this interface service, please use the service provided by the local node. This endpoint supports both POST and GET methods. - [GetIncomingViewingKey](https://docs.tatum.io/reference/rpc-tron-getincomingviewingkey.md): Get the incoming viewing key from ak and nk This endpoint supports both POST and GET methods. - [GetNewShieldedAddress](https://docs.tatum.io/reference/rpc-tron-getnewshieldedaddress.md): Note:To ensure security, Trongrid has disabled this interface service, please use the service provided by the local node. This endpoint supports both POST and GET methods. - [GetNextMaintenanceTime](https://docs.tatum.io/reference/rpc-tron-getnextmaintenancetime.md): Returns the timestamp of the next voting time in milliseconds. This endpoint supports both POST and GET methods. - [GetNkFromNsk](https://docs.tatum.io/reference/rpc-tron-getnkfromnsk.md): Get the nk from nsk This endpoint supports both POST and GET methods. - [GetPaginatedAssetIssueList](https://docs.tatum.io/reference/rpc-tron-getpaginatedassetissuelist.md): Query the list of all the tokens by pagination.Returns a list of Tokens that succeed the Token located at offset. This endpoint supports both POST and GET methods. - [GetPendingSize](https://docs.tatum.io/reference/rpc-tron-getpendingsize.md): Get the size of the pending pool queue This endpoint supports both POST and GET methods. - [GetProposalById](https://docs.tatum.io/reference/rpc-tron-getproposalbyid.md): Queries proposal based on ID and returns proposal details. This endpoint supports both POST and GET methods. - [GetSpendingKey](https://docs.tatum.io/reference/rpc-tron-getspendingkey.md): Note:To ensure security, Trongrid has disabled this interface service, please use the service provided by the local node. This endpoint supports both POST and GET methods. - [GetTransactionFromPending](https://docs.tatum.io/reference/rpc-tron-gettransactionfrompending.md): Get transaction details from the pending pool This endpoint supports both POST and GET methods. - [GetTransactionInfoByBlockNum](https://docs.tatum.io/reference/rpc-tron-gettransactioninfobyblocknum.md): Query the transaction fee, block height by block number This endpoint supports both POST and GET methods. - [GetTransactionInfoById](https://docs.tatum.io/reference/rpc-tron-gettransactioninfobyid.md): Query the transaction fee, block height by transaction id This endpoint supports both POST and GET methods. - [GetTransactionListFromPending](https://docs.tatum.io/reference/rpc-tron-gettransactionlistfrompending.md): Get transaction list information from pending pool This endpoint supports both POST and GET methods. - [GetTriggerInputForShieldedTrc20Contract](https://docs.tatum.io/reference/rpc-tron-gettriggerinputforshieldedtrc20contract.md): Get trigger input for shielded TRC20 contract. This endpoint supports both POST and GET methods. - [GetZenPaymentAddress](https://docs.tatum.io/reference/rpc-tron-getzenpaymentaddress.md): This endpoint supports both POST and GET methods. - [GetApprovedList](https://docs.tatum.io/reference/rpc-tron-http-getapprovedlist.md): Query the account address list which signed the transaction. This endpoint supports both POST and GET methods. - [IsShieldedTrc20ContractNoteSpent](https://docs.tatum.io/reference/rpc-tron-isshieldedtrc20contractnotespent.md): Check if the note is spent. This endpoint supports both POST and GET methods. - [ListWitnesses](https://docs.tatum.io/reference/rpc-tron-listwitnesses.md): List all Super Representatives. This endpoint supports both POST and GET methods. - [ParticipateAssetIssue](https://docs.tatum.io/reference/rpc-tron-participateassetissue.md): Participate in an asset issue. This endpoint supports both POST and GET methods. - [ProposalApprove](https://docs.tatum.io/reference/rpc-tron-proposalapprove.md): Approves proposed transaction. This endpoint supports both POST and GET methods. - [ProposalCreate](https://docs.tatum.io/reference/rpc-tron-proposalcreate.md): Creates a proposal transaction. This endpoint supports both POST and GET methods. - [ProposalDelete](https://docs.tatum.io/reference/rpc-tron-proposaldelete.md): Deletes Proposal Transaction. This endpoint supports both POST and GET methods. - [ScanShieldedTrc20NotesByIvk](https://docs.tatum.io/reference/rpc-tron-scanshieldedtrc20notesbyivk.md): Scan outgoing notes. This endpoint supports both POST and GET methods. - [ScanShieldedTrc20NotesByOvk](https://docs.tatum.io/reference/rpc-tron-scanshieldedtrc20notesbyovk.md): Scan outgoing notes(spent). This endpoint supports both POST and GET methods. - [TransferAsset](https://docs.tatum.io/reference/rpc-tron-transferasset.md): Transfer TRC10 token. This endpoint supports both POST and GET methods. - [TriggerConstantContract](https://docs.tatum.io/reference/rpc-tron-triggerconstantcontract.md): Invoke the readonly function (modified by the `view` or `pure` modifier) of a contract for contract data query; or Invoke the non-readonly function of a contract for predicting whether the transaction can be successfully executed and estimating the energy consumption; or estimate the energy consumption of contract deployment This endpoint supports both POST and GET methods. - [TriggerSmartContract](https://docs.tatum.io/reference/rpc-tron-triggersmartcontract.md): Returns TransactionExtention, which contains the unsigned Transaction This endpoint supports both POST and GET methods. - [UnDelegateResource](https://docs.tatum.io/reference/rpc-tron-undelegateresource.md): Cancel the delegation of bandwidth or energy resources to other accounts in Stake2.0 This endpoint supports both POST and GET methods. - [UnfreezeAsset](https://docs.tatum.io/reference/rpc-tron-unfreezeasset.md): Unstake a token that has passed the minimum freeze duration. This endpoint supports both POST and GET methods. - [UnfreezeBalanceV2](https://docs.tatum.io/reference/rpc-tron-unfreezebalancev2.md): Unstake some TRX staked in Stake2.0, release the corresponding amount of bandwidth or energy, and voting rights (TP) This endpoint supports both POST and GET methods. - [UpdateAccount](https://docs.tatum.io/reference/rpc-tron-updateaccount.md): Modify account name This endpoint supports both POST and GET methods. - [UpdateWitness](https://docs.tatum.io/reference/rpc-tron-updatewitness.md): Edit the URL of the SR's official website. This endpoint supports both POST and GET methods. - [ValidateAddress](https://docs.tatum.io/reference/rpc-tron-validateaddress.md): Validates address, returns either true or false. This endpoint supports both POST and GET methods. - [VoteWitnessAccount](https://docs.tatum.io/reference/rpc-tron-votewitnessaccount.md): Vote for super representatives This endpoint supports both POST and GET methods. - [DeployContract](https://docs.tatum.io/reference/rpc-tron-wallet-deploycontract.md): Deploys a contract. Returns TransactionExtention, which contains an unsigned transaction. This endpoint supports both POST and GET methods. - [GetBlockByLatestNum](https://docs.tatum.io/reference/rpc-tron-wallet-getblockbylatestnum.md): Returns a list of block objects. This endpoint supports both POST and GET methods. - [GetBlockByNum](https://docs.tatum.io/reference/rpc-tron-wallet-getblockbynum.md): Returns the Block Object corresponding to the 'Block Height' specified (number of blocks preceding it). This endpoint supports both POST and GET methods. - [GetChainParameters](https://docs.tatum.io/reference/rpc-tron-wallet-getchainparameters.md): All parameters that the blockchain committee can set This endpoint supports both POST and GET methods. - [GetContract](https://docs.tatum.io/reference/rpc-tron-wallet-getcontract.md): Queries a contract's information from the blockchain, including the bytecode of the contract, ABI, configuration parameters, etc. This endpoint supports both POST and GET methods. - [GetExchangeById](https://docs.tatum.io/reference/rpc-tron-wallet-getexchangebyid.md): Query exchange pair based on id This endpoint supports both POST and GET methods. - [GetNodeInfo](https://docs.tatum.io/reference/rpc-tron-wallet-getnodeinfo.md): Query Node Information. Returns information about current state of node. This endpoint supports both POST and GET methods. - [GetNowBlock](https://docs.tatum.io/reference/rpc-tron-wallet-getnowblock.md): Query the latest block information This endpoint supports both POST and GET methods. - [GetTransactionById](https://docs.tatum.io/reference/rpc-tron-wallet-gettransactionbyid.md): Query transaction information by transaction id. This endpoint supports both POST and GET methods. - [ListExchanges](https://docs.tatum.io/reference/rpc-tron-wallet-listexchanges.md): List all exchange pairs. This endpoint supports both POST and GET methods. - [ListNodes](https://docs.tatum.io/reference/rpc-tron-wallet-listnodes.md): Query the list of nodes connected to the API node This endpoint supports both POST and GET methods. - [ListProposals](https://docs.tatum.io/reference/rpc-tron-wallet-listproposals.md): List all proposals. This endpoint supports both POST and GET methods. - [UpdateAsset](https://docs.tatum.io/reference/rpc-tron-wallet-updateasset.md): Update basic TRC10 token information. This endpoint supports both POST and GET methods. - [UpdateBrokerage](https://docs.tatum.io/reference/rpc-tron-wallet-updatebrokerage.md): Update the SR's brokerage setting. This endpoint supports both POST and GET methods. - [UpdateEnergyLimit](https://docs.tatum.io/reference/rpc-tron-wallet-updateenergylimit.md): Update the origin_energy_limit parameter of a smart contract This endpoint supports both POST and GET methods. - [UpdateSetting](https://docs.tatum.io/reference/rpc-tron-wallet-updatesetting.md): Update the consume_user_resource_percent parameter of a smart contract This endpoint supports both POST and GET methods. - [WithdrawBalance](https://docs.tatum.io/reference/rpc-tron-withdrawbalance.md): Super Representative or user withdraw rewards, usable every 24 hours. Super representatives can withdraw the balance from the account allowance into the account balance, Users can claim the voting reward from the SRs and deposit into his account balance. This endpoint supports both POST and GET methods. - [WithdrawExpireUnfreeze](https://docs.tatum.io/reference/rpc-tron-withdrawexpireunfreeze.md): Withdraw unfrozen balance in Stake2.0, the user can call this API to get back their funds after executing /wallet/unfreezebalancev2 transaction and waiting N days, N is a network parameter This endpoint supports both POST and GET methods. - [GetAssetIssueById](https://docs.tatum.io/reference/rpc-tron-solidity-getassetissuebyid.md): Query a token by token id. Returns the token object, which contains the token name. (Confirmed state) This endpoint supports both POST and GET methods. - [GetAssetIssueList](https://docs.tatum.io/reference/rpc-tron-solidity-getassetissuelist.md): Query the list of all the TRC10 tokens (Confirmed state) This endpoint supports both POST and GET methods. - [GetAssetIssueListByName](https://docs.tatum.io/reference/rpc-tron-solidity-getassetissuelistbyname.md): Query the list of all the TRC10 tokens by a name. (Confirmed state) This endpoint supports both POST and GET methods. - [GetAvailableUnfreezeCount](https://docs.tatum.io/reference/rpc-tron-solidity-getavailableunfreezecount.md): Stake 2.0 API remaining times of executing unstake operation. (Confirmed state) This endpoint supports both POST and GET methods. - [GetBlockById](https://docs.tatum.io/reference/rpc-tron-solidity-getblockbyid.md): Query block by ID(block hash). (Confirmed state) This endpoint supports both POST and GET methods. - [GetBlockByLatestNum](https://docs.tatum.io/reference/rpc-tron-solidity-getblockbylatestnum.md): Get the latest block by block number This endpoint supports both POST and GET methods. - [GetBlockByLimitNext](https://docs.tatum.io/reference/rpc-tron-solidity-getblockbylimitnext.md): Returns the list of Block Objects included in the 'Block Height' range specified. (Confirmed state) This endpoint supports both POST and GET methods. - [GetBlockByNum](https://docs.tatum.io/reference/rpc-tron-solidity-getblockbynum.md): Queries whether a specified block is confirmed,If the block can be obtained, the block is confirmed by the network; if the block cannot be obtained, the block is not confirmed by the network This endpoint supports both POST and GET methods. - [GetCanDelegatedMaxSize](https://docs.tatum.io/reference/rpc-tron-solidity-getcandelegatedmaxsize.md): Stake2.0 API query the amount of delegatable resources share of the specified resource type for an address, unit is sun. (Confirmed state) This endpoint supports both POST and GET methods. - [GetCanWithdrawUnfreezeAmount](https://docs.tatum.io/reference/rpc-tron-solidity-getcanwithdrawunfreezeamount.md): Stake2.0 API query the withdrawable balance at the specified timestamp (confirmed state) This endpoint supports both POST and GET methods. - [GetDelegatedResource](https://docs.tatum.io/reference/rpc-tron-solidity-getdelegatedresource.md): Returns all resources delegations from an account to another account during stake1.0 phase. The fromAddress can be retrieved from the GetDelegatedResourceAccountIndex API. (Confirmed state) This endpoint supports both POST and GET methods. - [GetDelegatedResourceAccountIndexV2](https://docs.tatum.io/reference/rpc-tron-solidity-getdelegatedresourceaccountindexv2.md): Stake 2.0 API query the resource delegation index by an account (confirmed state). Two lists will return, one is the list of addresses the account has delegated its resources(toAddress), and the other is the list of addresses that have delegated resources to the account(fromAddress). This endpoint supports both POST and GET methods. - [GetExchangeById](https://docs.tatum.io/reference/rpc-tron-solidity-getexchangebyid.md): Query exchange pair based on id (Confirmed state) This endpoint supports both POST and GET methods. - [GetNodeInfo](https://docs.tatum.io/reference/rpc-tron-solidity-getnodeinfo.md): Query Node Information. Returns information about current state of node. (Confirmed state) This endpoint supports both POST and GET methods. - [GetNowBlock](https://docs.tatum.io/reference/rpc-tron-solidity-getnowblock.md): Get the latest block This endpoint supports both POST and GET methods. - [GetPaginatedAssetIssueList](https://docs.tatum.io/reference/rpc-tron-solidity-getpaginatedassetissuelist.md): Query the list of all the tokens by pagination (confirmed state). Returns a list of Tokens that succeed the Token located at offset. This endpoint supports both POST and GET methods. - [GetTransactionById](https://docs.tatum.io/reference/rpc-tron-solidity-gettransactionbyid.md): Get transaction information by transaction id This endpoint supports both POST and GET methods. - [GetTransactionCountByBlockNum](https://docs.tatum.io/reference/rpc-tron-solidity-gettransactioncountbyblocknum.md): Get transaction count in a block by block number. (Confirmed state) This endpoint supports both POST and GET methods. - [GetTransactionInfoByBlockNum](https://docs.tatum.io/reference/rpc-tron-solidity-gettransactioninfobyblocknum.md): Get transaction information by block number This endpoint supports both POST and GET methods. - [GetTransactionInfoById](https://docs.tatum.io/reference/rpc-tron-solidity-gettransactioninfobyid.md): Query the transaction fee, block height by transaction id. (Confirmed state) This endpoint supports both POST and GET methods. - [IsShieldedTrc20ContractNoteSpent](https://docs.tatum.io/reference/rpc-tron-solidity-isshieldedtrc20contractnotespent.md): Check if the note is spent. (Confirmed state) This endpoint supports both POST and GET methods. - [ListExchanges](https://docs.tatum.io/reference/rpc-tron-solidity-listexchanges.md): List all exchange pairs. (Confirmed state) This endpoint supports both POST and GET methods. - [ListWitnesses](https://docs.tatum.io/reference/rpc-tron-solidity-listwitnesses.md): List all Super Representatives (Confirmed state) This endpoint supports both POST and GET methods. - [ScanShieldedTrc20NotesByIvk](https://docs.tatum.io/reference/rpc-tron-solidity-scanshieldedtrc20notesbyivk.md): Scan outgoing notes. (Confirmed state) This endpoint supports both POST and GET methods. - [ScanShieldedTrc20NotesByOvk](https://docs.tatum.io/reference/rpc-tron-solidity-scanshieldedtrc20notesbyovk.md): Scan outgoing notes(spent). (Confirmed state) This endpoint supports both POST and GET methods. - [GetAccount](https://docs.tatum.io/reference/rpc-tron-solidity-walletsolidity-getaccount.md): Query information about an account, including TRX balance, TRC-10 balances, stake information and vote information and permissions etc. (Confirmed state) This endpoint supports both POST and GET methods. - [Generate a TRON wallet](https://docs.tatum.io/reference/generatetronwallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for Bitcoin wallet with derivation path m'/44'/195'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/tron/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible Tron wallet.
- [Get all transactions for a TRON account](https://docs.tatum.io/reference/tronaccounttx.md):5 credits per API call
Get all transactions for a TRON account.
This API returns up to 200 transactions in one API call. If there are more than 200 transactions for the TRON account, the response body will contain the next parameter with the fingerprint of the transaction that follows the last (200th) transaction in the returned list.
To get the next 200 transactions, make another call using this API, but this time add the next parameter the endpoint URL and set it to the transaction fingerprint from the next parameter in the response, for example:
https://api.tatum.io/v3/tron/transaction/account/{address}?next=81d0524acf5967f3b361e03fd7d141ab511791cd7aad7ae406c4c8d408290991
5 credits per API call
Get TRC-20 transactions for a TRON account.
This API returns up to 200 transactions in one API call. If there are more than 200 transactions for the TRON account, the response body will contain the next parameter with the fingerprint of the transaction that follows the last (200th) transaction in the returned list.
To get the next 200 transactions, make another call using this API, but this time add the next parameter the endpoint URL and set it to the transaction fingerprint from the next parameter in the response, for example:
https://api.tatum.io/v3/tron/transaction/account/{address}/trc20?next=81d0524acf5967f3b361e03fd7d141ab511791cd7aad7ae406c4c8d408290991
5 credits per API call
Broadcast Tron transaction. This method is used internally from Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Create a TRC-10 token](https://docs.tatum.io/reference/troncreatetrc10.md):10 credits per API call
Create a TRON TRC-10 token.
One TRON account can create only one TRC-10 token. The whole supply of the token is transferred to the issuer's account 100 seconds after the token has been created.
Signing a transaction
When creating a TRC-10 token, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Create a TRC-20 token](https://docs.tatum.io/reference/troncreatetrc20.md):10 credits per API call
Create a TRON TRC-20 capped token. A capped TRC20 token is a type of token on the TRON blockchain that has a preset limit on the total number of tokens that can be created. This limit is specified during the token creation process and cannot be exceeded. Once the limit is reached, no more tokens can be minted. This feature helps to ensure the scarcity and value of the token and can provide investors with a sense of security. It is a popular choice for fundraising, as it allows for a predetermined amount of funds to be raised through the sale of tokens, and any excess tokens that are not sold are simply not minted.
Signing a transaction
When creating a TRC-20 token, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Freeze the balance of a TRON account](https://docs.tatum.io/reference/tronfreeze.md):10 credits per API call
Freeze Tron assets on the address. By freezing assets, you can obtain energy or bandwidth to perform transactions.
Signing a transaction
When freezing the balance, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Generate a TRON address from the wallet's extended public key](https://docs.tatum.io/reference/trongenerateaddress.md):5 credits per API call
Generate a TRON address from the extended public key of the wallet. The address is generated for the specific index - each extended public key can generate up to 2^32 addresses with the index starting from 0 up to 2^31.
- [Generate the private key for a TRON address](https://docs.tatum.io/reference/trongenerateaddressprivatekey.md):10 credits per API call
Generate private key for address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Get the TRON account by its address](https://docs.tatum.io/reference/trongetaccount.md):5 credits per API call
Get Tron account by address.
- [Get a TRON block by its hash or height](https://docs.tatum.io/reference/trongetblock.md):⚠️ Deprecated: Get a TRON block by its hash or height
GET /v3/tron/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch the TRON block details by hash or height. This endpoint returns information about a specific block.
5 credits per API call
Get Tron block by hash or height.
- [Get the current TRON block](https://docs.tatum.io/reference/trongetcurrentblock.md):5 credits per API call
Get current Tron block.
- [Get a TRON transaction by its hash](https://docs.tatum.io/reference/trongettransaction.md):⚠️ Deprecated: Get a TRON transaction by its hash
GET /v3/tron/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch the TRON transaction details by hash. This endpoint returns information about a specific transaction.
5 credits per API call
Get Tron transaction by hash.
- [Send TRX to a TRON account](https://docs.tatum.io/reference/trontransfer.md):10 credits per API call
Send an amount in TRX from address to address.
Signing a transaction
When sending TRX to a TRON account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send TRC-10 tokens to a TRON account](https://docs.tatum.io/reference/trontransfertrc10.md):10 credits per API call
Send TRC-10 tokens from address to address.
Signing a transaction
When sending TRC-10 tokens to a TRON account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send TRC-20 tokens to a TRON account](https://docs.tatum.io/reference/trontransfertrc20.md):10 credits per API call
Send TRC-20 tokens from address to address.
Signing a transaction
When sending TRC-20 tokens to a TRON account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get information about a TRC-10 token](https://docs.tatum.io/reference/trontrc10detail.md):5 credits per API call
Get information about a TRON TRC-10 token.
- [Unfreeze the balance of a TRON account](https://docs.tatum.io/reference/tronunfreeze.md):10 credits per API call
Unfreeze Tron assets on the address. By unfreezing assets, you can unlock your staked TRX.
Signing a transaction
When unfreezing the balance, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Unichain](https://docs.tatum.io/reference/rpc-unichain.md): Explore Unichain, a high-performance Layer 2 built by Uniswap Labs for DeFi and cross-chain liquidity. Build fast, low-cost dApps using its Optimism-based infrastructure. - [VeChain](https://docs.tatum.io/reference/rpc-vechain.md): Discover VeChain, a blockchain optimized for enterprise solutions and supply chain management. Build decentralized applications using its RPC gateway. - [Send VeChain from account to account](https://docs.tatum.io/reference/vetblockchaintransfer.md):Send VET from account to account. Fee for the transaction is paid in VTHO.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Broadcast signed transaction to VeChain blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate VeChain account address from Extended public key](https://docs.tatum.io/reference/vetgenerateaddress.md):Generate VeChain account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31 - 1.
- [Generate VeChain private key](https://docs.tatum.io/reference/vetgenerateaddressprivatekey.md):Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^32 private keys starting from index 0 until 2^31 - 1.
- [Generate VeChain wallet](https://docs.tatum.io/reference/vetgeneratewallet.md):Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for VeChain wallet with derivation path m'/44'/818'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible VeChain wallet.
- [Get VeChain Account balance](https://docs.tatum.io/reference/vetgetbalance.md):⚠️ Deprecated: Get VeChain Account Balance
GET /v3/vet/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the VeChain account balance in VET. This endpoint returns the balance for a specific address.
Get VeChain Account balance in VET.
- [Get VeChain Block by hash](https://docs.tatum.io/reference/vetgetblock.md):⚠️ Deprecated: Get VeChain Block
GET /v3/vet/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch the VeChain block details by block hash or block number. This endpoint returns information about a specific block.
Get VeChain Block by block hash or block number.
- [Get VeChain current block](https://docs.tatum.io/reference/vetgetcurrentblock.md):Get VeChain current block number.
- [Get VeChain Account energy (VTHO)](https://docs.tatum.io/reference/vetgetenergy.md):Get VeChain Account energy in VTHO. VTHO is used for paying for the transaction fee.
- [Get VeChain Transaction](https://docs.tatum.io/reference/vetgettransaction.md):⚠️ Deprecated: Get VeChain Transaction by hash
GET /v3/vet/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch the VeChain transaction details by transaction hash. This endpoint returns information about a specific transaction.
Get VeChain Transaction by transaction hash.
- [Get VeChain Transaction Receipt](https://docs.tatum.io/reference/vetgettransactionreceipt.md):Get VeChain Transaction Receipt by transaction hash. Transaction receipt is available only after transaction is included in the block and contains information about paid fee or created contract address and much more.
- [Xinfin](https://docs.tatum.io/reference/rpc-xinfin.md): Explore XinFin, a hybrid blockchain optimized for global trade and finance. Build enterprise-grade dApps using its RPC gateway. - [debug_getbadblocks](https://docs.tatum.io/reference/rpc-xinfin-debug_getbadblocks.md): Xinfin RPC - [debug_storagerangeat](https://docs.tatum.io/reference/rpc-xinfin-debug_storagerangeat.md): Xinfin RPC - [debug_traceblock](https://docs.tatum.io/reference/rpc-xinfin-debug_traceblock.md): Xinfin RPC - [debug_traceblockbyhash](https://docs.tatum.io/reference/rpc-xinfin-debug_traceblockbyhash.md): Xinfin RPC - [debug_traceblockbynumber](https://docs.tatum.io/reference/rpc-xinfin-debug_traceblockbynumber.md): Xinfin RPC - [debug_tracecall](https://docs.tatum.io/reference/rpc-xinfin-debug_tracecall.md): Xinfin RPC - [debug_tracetransaction](https://docs.tatum.io/reference/rpc-xinfin-debug_tracetransaction.md): Xinfin RPC - [eth_blocknumber](https://docs.tatum.io/reference/rpc-xinfin-eth_blocknumber.md): Xinfin RPC - [eth_call](https://docs.tatum.io/reference/rpc-xinfin-eth_call.md): Xinfin RPC - [eth_chainid](https://docs.tatum.io/reference/rpc-xinfin-eth_chainid.md): Xinfin RPC - [eth_estimategas](https://docs.tatum.io/reference/rpc-xinfin-eth_estimategas.md): Xinfin RPC - [eth_feehistory](https://docs.tatum.io/reference/rpc-xinfin-eth_feehistory.md): Xinfin RPC - [eth_gasprice](https://docs.tatum.io/reference/rpc-xinfin-eth_gasprice.md): Xinfin RPC - [eth_getbalance](https://docs.tatum.io/reference/rpc-xinfin-eth_getbalance.md): Xinfin RPC - [eth_getblockbyhash](https://docs.tatum.io/reference/rpc-xinfin-eth_getblockbyhash.md): Xinfin RPC - [eth_getblockbynumber](https://docs.tatum.io/reference/rpc-xinfin-eth_getblockbynumber.md): Xinfin RPC - [eth_getblocktransactioncountbyhash](https://docs.tatum.io/reference/rpc-xinfin-eth_getblocktransactioncountbyhash.md): Xinfin RPC - [eth_getblocktransactioncountbynumber](https://docs.tatum.io/reference/rpc-xinfin-eth_getblocktransactioncountbynumber.md): Xinfin RPC - [eth_getcode](https://docs.tatum.io/reference/rpc-xinfin-eth_getcode.md): Xinfin RPC - [eth_getlogs](https://docs.tatum.io/reference/rpc-xinfin-eth_getlogs.md): Xinfin RPC - [eth_getproof](https://docs.tatum.io/reference/rpc-xinfin-eth_getproof.md): Xinfin RPC - [eth_getstorageat](https://docs.tatum.io/reference/rpc-xinfin-eth_getstorageat.md): Xinfin RPC - [eth_gettransactionbyblockhashandindex](https://docs.tatum.io/reference/rpc-xinfin-eth_gettransactionbyblockhashandindex.md): Xinfin RPC - [eth_gettransactionbyblocknumberandindex](https://docs.tatum.io/reference/rpc-xinfin-eth_gettransactionbyblocknumberandindex.md): Xinfin RPC - [eth_gettransactionbyhash](https://docs.tatum.io/reference/rpc-xinfin-eth_gettransactionbyhash.md): Xinfin RPC - [eth_gettransactioncount](https://docs.tatum.io/reference/rpc-xinfin-eth_gettransactioncount.md): Xinfin RPC - [eth_gettransactionreceipt](https://docs.tatum.io/reference/rpc-xinfin-eth_gettransactionreceipt.md): Xinfin RPC - [eth_getunclecountbyblockhash](https://docs.tatum.io/reference/rpc-xinfin-eth_getunclecountbyblockhash.md): Xinfin RPC - [eth_getunclecountbyblocknumber](https://docs.tatum.io/reference/rpc-xinfin-eth_getunclecountbyblocknumber.md): Xinfin RPC - [eth_maxpriorityfeepergas](https://docs.tatum.io/reference/rpc-xinfin-eth_maxpriorityfeepergas.md): Xinfin RPC - [eth_sendrawtransaction](https://docs.tatum.io/reference/rpc-xinfin-eth_sendrawtransaction.md): Xinfin RPC - [txpool_content](https://docs.tatum.io/reference/rpc-xinfin-txpool_content.md): Xinfin RPC - [txpool_inspect](https://docs.tatum.io/reference/rpc-xinfin-txpool_inspect.md): Xinfin RPC - [txpool_status](https://docs.tatum.io/reference/rpc-xinfin-txpool_status.md): Xinfin RPC - [web3_clientversion](https://docs.tatum.io/reference/rpc-xinfin-web3_clientversion.md): Xinfin RPC - [Invoke a method in a smart contract on XinFin](https://docs.tatum.io/reference/xdcblockchainsmartcontractinvocation.md):2 credits per API call
Invoke a method in an existing smart contract on XinFin.
You can call a read-only or write method.
Troubleshooting a failed transaction
Tatum ensures that this API works against the blockchain (accesses the blockchain, finds the specified smart contract, and executes the specified ABI method with the provided parameters).
However, because this API can be run against any smart contract on the blockchain, Tatum cannot in any way guarantee that the method itself will be executed successfully.
If you have issues with invoking the method, refer to the user documentation for this method, or contact the author of the smart contract.
For more information about invoking methods in smart contracts, see this article on our Support Portal.
Signing a transaction
When invoking a method in a smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send XDC / ERC20 from account to account](https://docs.tatum.io/reference/xdcblockchaintransfer.md):2 credits per API call
Send XDC or Tatum supported ERC20 token from account to account.
Signing a transaction
When sending XDC, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
Alternatively, using the Tatum client library for supported languages. - [Broadcast signed XDC transaction](https://docs.tatum.io/reference/xdcbroadcast.md):2 credits per API call
Broadcast signed transaction to XDC blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Generate XDC account address from Extended public key](https://docs.tatum.io/reference/xdcgenerateaddress.md):1 credit per API call
Generate XDC account deposit address from Extended public key. Deposit address is generated for the specific index - each extended public key can generate up to 2^31 addresses starting from index 0 until 2^31.
- [Generate XDC private key](https://docs.tatum.io/reference/xdcgenerateaddressprivatekey.md):1 credit per API call
Generate private key of address from mnemonic for given derivation path index. Private key is generated for the specific index - each mnemonic can generate up to 2^31 private keys starting from index 0 until 2^31.
- [Generate XDC wallet](https://docs.tatum.io/reference/xdcgeneratewallet.md):1 credit per API call
Tatum supports BIP44 HD wallets. It is very convenient and secure, since it can generate 2^31 addresses from 1 mnemonic phrase. Mnemonic phrase consists of 24 special words in defined order and can restore access to all generated addresses and private keys.
Each address is identified by 3 main values:
Tatum follows BIP44 specification and generates for XDC wallet with derivation path m'/44'/550'/0'/0. More about BIP44 HD wallets can be found here - https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki. Generate BIP44 compatible XDC wallet.
- [Get XDC Account balance](https://docs.tatum.io/reference/xdcgetbalance.md):⚠️ Deprecated: Get Balance
GET /v3/xdc/account/balance/{address}is deprecated.Use
GET /v4/data/blockchains/balanceFetch the balance of a blockchain address, including native and fungible tokens.
1 credit per API call
Get account balance in XDC. This method does not prints any balance of the ERC20 or ERC721 tokens on the account.
- [Get XDC block by hash](https://docs.tatum.io/reference/xdcgetblock.md):⚠️ Deprecated: Get Block
GET /v3/xdc/block/{hash}is deprecated.Use
GET /v4/data/blockchains/blockFetch a specific block from the blockchain by providing the block hash or block number.
1 credit per API call
Get XDC block by block hash or block number.
- [Get current block number](https://docs.tatum.io/reference/xdcgetcurrentblock.md):⚠️ Deprecated: Get Current Block
GET /v3/xdc/block/currentis deprecated.Use
GET /v4/data/blockchains/block/currentFetch the current block in the blockchain. This endpoint returns the latest block number available.
1 credit per API call
Get XDC current block number. This is the number of the latest block in the blockchain.
- [Get XDC Transaction](https://docs.tatum.io/reference/xdcgettransaction.md):⚠️ Deprecated: Get Transaction
GET /v3/xdc/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch a specific transaction from the blockchain by providing the transaction hash.
2 credits per API call
Get XDC transaction by transaction hash.
- [Get count of outgoing XDC transactions](https://docs.tatum.io/reference/xdcgettransactioncount.md):⚠️ Deprecated: Get Transaction Count
GET /v3/xdc/transaction/count/{address}is deprecated.Use
GET /v4/data/blockchains/transaction/countFetch the count of transactions for a blockchain address.
1 credit per API call
Get a number of outgoing XDC transactions for the address. When a transaction is sent, there can be multiple outgoing transactions, which are not yet processed by the blockchain. To distinguish between them, there is a counter called a nonce, which represents the order of the transaction in the list of outgoing transactions.
- [Web3 HTTP driver](https://docs.tatum.io/reference/xdcweb3driver.md):2 credits per API call
This endpoint is deprecated. Use the HTTP-based JSON RPC driver instead.
Use this endpoint URL as a http-based web3 driver to connect directly to the XDC node provided by Tatum. To learn more about XDC Web3, visit the XDC developer's guide.
- [xlayer](https://docs.tatum.io/reference/rpc-xlayer.md): Discover X Layer, a blockchain platform designed for decentralized applications. Build secure and scalable dApps with its developer-friendly SDK. - [Ripple (XRP)](https://docs.tatum.io/reference/rpc-xrp.md): Discover Ripple (XRP), a blockchain optimized for cross-border payments. Build secure and fast financial applications using its RPC gateway. - [Modify XRP account](https://docs.tatum.io/reference/xrpaccountsettings.md):
Modify XRP account settings. If an XRP account should be an issuer of the custom asset, this accounts should have rippling enabled to true. In order to support off-chain processing, required destination tag should be set on the account.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Broadcast signed transaction to XRP blockchain. This method is used internally from Tatum KMS or Tatum client libraries. It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.
- [Get Account Balance](https://docs.tatum.io/reference/xrpgetaccountbalance.md):Get XRP Account Balance. Obtain balance of the XRP and other assets on the account.
- [Get Account info](https://docs.tatum.io/reference/xrpgetaccountinfo.md):Get XRP Account info.
- [Get Account transactions](https://docs.tatum.io/reference/xrpgetaccounttx.md):List all Account transactions.
- [Get actual Blockchain fee](https://docs.tatum.io/reference/xrpgetfee.md):Get XRP Blockchain fee. Standard fee for the transaction is available in the drops.base_fee section and is 10 XRP drops by default. When there is a heavy traffic on the blockchain, fees are increasing according to current traffic.
- [Get XRP Blockchain Information](https://docs.tatum.io/reference/xrpgetlastclosedledger.md):Get XRP Blockchain last closed ledger index and hash.
- [Get Ledger](https://docs.tatum.io/reference/xrpgetledger.md):⚠️ Deprecated: Get Ledger
GET /v3/xrp/ledger/{i}is deprecated.Use
GET /v4/data/blockchains/blockFetch the ledger details by sequence number. This endpoint returns information about a specific XRP ledger.
Get ledger by sequence.
- [Get XRP Transaction by hash](https://docs.tatum.io/reference/xrpgettransaction.md):⚠️ Deprecated: Get XRP Transaction by hash
GET /v3/xrp/transaction/{hash}is deprecated.Use
GET /v4/data/blockchains/transactionFetch the XRP transaction details by transaction hash. This endpoint returns information about a specific transaction.
Get XRP Transaction by transaction hash.
- [Send XRP from address to address](https://docs.tatum.io/reference/xrptransferblockchain.md):Send XRP from account to account.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Create / Update / Delete XRP trust line between accounts to transfer private assets. By creating trustline for the first time, the asset is created automatically and can be used in the transactions.
Account setting rippling must be enabled on the issuer account before the trust line creation to asset work correctly. Creating a trust line will cause an additional 5 XRP to be blocked on the account.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and loss of funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
Generate XRP account. Tatum does not support HD wallet for XRP, only specific address and private key can be generated.
- [account_channels](https://docs.tatum.io/reference/rpc-xrp-account_channels.md): XRP RPC - [account_currencies](https://docs.tatum.io/reference/rpc-xrp-account_currencies.md): XRP RPC - [account_info](https://docs.tatum.io/reference/rpc-xrp-account_info.md): XRP RPC - [account_lines](https://docs.tatum.io/reference/rpc-xrp-account_lines.md): XRP RPC - [account_nfts](https://docs.tatum.io/reference/rpc-xrp-account_nfts.md): XRP RPC - [account_objects](https://docs.tatum.io/reference/rpc-xrp-account_objects.md): XRP RPC - [account_offers](https://docs.tatum.io/reference/rpc-xrp-account_offers.md): XRP RPC - [account_tx](https://docs.tatum.io/reference/rpc-xrp-account_tx.md): XRP RPC - [book_offers](https://docs.tatum.io/reference/rpc-xrp-book_offers.md): XRP RPC - [channel_authorize](https://docs.tatum.io/reference/rpc-xrp-channel_authorize.md): XRP RPC - [channel_verify](https://docs.tatum.io/reference/rpc-xrp-channel_verify.md): XRP RPC - [deposit_authorized](https://docs.tatum.io/reference/rpc-xrp-deposit_authorized.md): XRP RPC - [fee](https://docs.tatum.io/reference/rpc-xrp-fee.md): XRP RPC - [ledger_closed](https://docs.tatum.io/reference/rpc-xrp-ledger_closed.md): XRP RPC - [ledger_data](https://docs.tatum.io/reference/rpc-xrp-ledger_data.md): XRP RPC - [ledger_entry](https://docs.tatum.io/reference/rpc-xrp-ledger_entry.md): XRP RPC - [ledger](https://docs.tatum.io/reference/rpc-xrp-ledger.md): XRP RPC - [manifest](https://docs.tatum.io/reference/rpc-xrp-manifest.md): XRP RPC - [nft_buy_offers](https://docs.tatum.io/reference/rpc-xrp-nft_buy_offers.md): XRP RPC - [nft_sell_offers](https://docs.tatum.io/reference/rpc-xrp-nft_sell_offers.md): XRP RPC - [noripple_check](https://docs.tatum.io/reference/rpc-xrp-noripple_check.md): XRP RPC - [ping](https://docs.tatum.io/reference/rpc-xrp-ping.md): XRP RPC - [random](https://docs.tatum.io/reference/rpc-xrp-random.md): XRP RPC - [ripple_path_find](https://docs.tatum.io/reference/rpc-xrp-ripple_path_find.md): XRP RPC - [server_info](https://docs.tatum.io/reference/rpc-xrp-server_info.md): XRP RPC - [server_state](https://docs.tatum.io/reference/rpc-xrp-server_state.md): XRP RPC - [submit_multisigned](https://docs.tatum.io/reference/rpc-xrp-submit_multisigned.md): XRP RPC - [submit](https://docs.tatum.io/reference/rpc-xrp-submit.md): XRP RPC - [transaction_entry](https://docs.tatum.io/reference/rpc-xrp-transaction_entry.md): XRP RPC - [tx](https://docs.tatum.io/reference/rpc-xrp-tx.md): XRP RPC - [Zcash](https://docs.tatum.io/reference/rpc-zcash.md): Explore Zcash, a privacy-focused blockchain using zero-knowledge proofs. Build confidential decentralized applications using its RPC gateway. - [createrawtransaction](https://docs.tatum.io/reference/rpc-zcash-createrawtransaction.md): Zcash RPC - [decoderawtransaction](https://docs.tatum.io/reference/rpc-zcash-decoderawtransaction.md): Zcash RPC - [decodescript](https://docs.tatum.io/reference/rpc-zcash-decodescript.md): Zcash RPC - [estimatesmartfee](https://docs.tatum.io/reference/rpc-zcash-estimatesmartfee.md): Zcash RPC - [getbestblockhash](https://docs.tatum.io/reference/rpc-zcash-getbestblockhash.md): Zcash RPC - [getblock](https://docs.tatum.io/reference/rpc-zcash-getblock.md): Zcash RPC - [getblockchaininfo](https://docs.tatum.io/reference/rpc-zcash-getblockchaininfo.md): Zcash RPC - [getblockcount](https://docs.tatum.io/reference/rpc-zcash-getblockcount.md): Zcash RPC - [getblockhash](https://docs.tatum.io/reference/rpc-zcash-getblockhash.md): Zcash RPC - [getblockheader](https://docs.tatum.io/reference/rpc-zcash-getblockheader.md): Zcash RPC - [getblockstats](https://docs.tatum.io/reference/rpc-zcash-getblockstats.md): Zcash RPC - [getchaintips](https://docs.tatum.io/reference/rpc-zcash-getchaintips.md): Zcash RPC - [getdifficulty](https://docs.tatum.io/reference/rpc-zcash-getdifficulty.md): Zcash RPC - [getmempoolancestors](https://docs.tatum.io/reference/rpc-zcash-getmempoolancestors.md): Zcash RPC - [getmempooldescendants](https://docs.tatum.io/reference/rpc-zcash-getmempooldescendants.md): Zcash RPC - [getmempoolentry](https://docs.tatum.io/reference/rpc-zcash-getmempoolentry.md): Zcash RPC - [getmempoolinfo](https://docs.tatum.io/reference/rpc-zcash-getmempoolinfo.md): Zcash RPC - [getrawmempool](https://docs.tatum.io/reference/rpc-zcash-getrawmempool.md): Zcash RPC - [getrawtransaction](https://docs.tatum.io/reference/rpc-zcash-getrawtransaction.md): Zcash RPC - [gettxout](https://docs.tatum.io/reference/rpc-zcash-gettxout.md): Zcash RPC - [gettxoutproof](https://docs.tatum.io/reference/rpc-zcash-gettxoutproof.md): Zcash RPC - [sendrawtransaction](https://docs.tatum.io/reference/rpc-zcash-sendrawtransaction.md): Zcash RPC - [validateaddress](https://docs.tatum.io/reference/rpc-zcash-validateaddress.md): Zcash RPC - [verifymessage](https://docs.tatum.io/reference/rpc-zcash-verifymessage.md): Zcash RPC - [verifytxoutproof](https://docs.tatum.io/reference/rpc-zcash-verifytxoutproof.md): Zcash RPC - [Zilliqa](https://docs.tatum.io/reference/rpc-zilliqa.md): Explore Zilliqa, a blockchain built for scalability using sharding technology. Build high-throughput decentralized applications using its RPC gateway. - [ZKsync](https://docs.tatum.io/reference/rpc-zksync.md): Discover zkSync, a Layer 2 scaling solution for Ethereum using ZK rollups. Build scalable decentralized applications using its RPC gateway. - [Delete endpoint](https://docs.tatum.io/reference/delete_endpoint-id.md): Deletes the endpoint with the given ID and returns the deletion result. - [Get endpoint usage](https://docs.tatum.io/reference/get_endpoint-id-usage.md): Retrieves usage for a specific endpoint by its ID. - [Get endpoint details](https://docs.tatum.io/reference/get_endpoint-id.md): Retrieves the endpoint details with the specified ID. - [Get all endpoints usage](https://docs.tatum.io/reference/get_endpoint-usage.md): Retrieves usage for all endpoints. - [Get all endpoints](https://docs.tatum.io/reference/get_endpoint.md): Retrieve all endpoints for the authenticated user. Supports optional filtering via query parameters such as display name, chain, network, interface, status, or routing options. - [Update endpoint](https://docs.tatum.io/reference/patch_endpoint-id.md): Updates the endpoint with the specified ID using the provided data. - [Test endpoint](https://docs.tatum.io/reference/post_endpoint-id-test.md): Test and verify an existing endpoint connection by its ID. - [Tests endpoint connection](https://docs.tatum.io/reference/post_endpoint-test.md): Sends the provided endpoint configuration for verification before the endpoint is created or saved. This allows clients to ensure that the target endpoint is reachable and functioning as expected. - [Create new endpoint](https://docs.tatum.io/reference/post_endpoint.md): Creates a new gateway endpoint. It accepts the endpoint configuration payload and registers a new endpoint within the gateway. - [Delete gateway](https://docs.tatum.io/reference/delete_gateway-id.md): Deletes a gateway by its ID. - [Get gateway usage](https://docs.tatum.io/reference/get_gateway-id-usage.md): Retrieves usage for a specific gateway by its ID. If the ID is a valid UUID, it retrieves usage for the custom gateway. Otherwise, it treats the ID as a Tatum interface ID (e.g., 'ethereum-mainnet') and retrieves usage for that interface. - [Get gateway details](https://docs.tatum.io/reference/get_gateway-id.md): Retrieves a single gateway by its ID. - [Get all usages](https://docs.tatum.io/reference/get_gateway-usage.md): Retrieves global gateway usage for the authenticated user. - [List all gateways](https://docs.tatum.io/reference/get_gateway.md): Retrieves a list of all gateways for the authenticated user. - [Update gateway](https://docs.tatum.io/reference/patch_gateway-id.md): Updates an existing gateway by its ID. - [Create new gateway](https://docs.tatum.io/reference/post_gateway.md): Creates a new gateway for the given owner. It accepts the gateway configuration payload and registers a new gateway. - [Tatum API Reference](https://docs.tatum.io/reference/welcome-to-the-tatum-api-reference.md) - [Complete pending transaction to sign](https://docs.tatum.io/reference/completependingsignature.md):Mark pending transaction to sign as a complete and update it with a transactionID from the blockchain.
- [Delete transaction](https://docs.tatum.io/reference/deletependingtransactiontosign.md):Delete transaction to be signed. When deleting offchain transaction, linked withdrawal will be cancelled automatically.
- [Get pending transactions to sign](https://docs.tatum.io/reference/getpendingtransactionstosign.md):1 credit per API call
Get the list of pending transactions to sign and broadcast using KMS.
- [Get transaction details](https://docs.tatum.io/reference/getpendingtransactiontosign.md):Get detail of transaction to be signed / that was already signed and contains transactionId.
- [Get pending transactions to sign](https://docs.tatum.io/reference/receivependingtransactionstosign.md):1 credit for every 500 signature IDs per API call
Get the list of pending transactions to sign and broadcast using KMS.
NOTE: This API works only in KMS v5.0 or later. If you use KMS older than v5.0, use this API instead.
- [Allow the NFT auction or marketplace to transfer an asset](https://docs.tatum.io/reference/approvenftauctionspending.md):2 credits per API call
Allow the NFT auction/marketplace smart contract to transfer the asset (NFT or Multi Token) that is listed for selling.
The auction/marketplace smart contract will transfer the asset to the buyer after the asset is purchased.
This API is supported for the following blockchains:
Signing a transaction
When allowing the NFT auction/marketplace smart contract to transfer the asset, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Bid for an asset at the NFT auction](https://docs.tatum.io/reference/bidonauction.md):2 credits per API call
Bid for an asset listed on the NFT auction.
You can buy the asset either for the native blockchain assets (for example, ETH, BSC, and so on) or for the fungible tokens of the blockchain.
After you have purchased the asset, it is in a pending state until the auction is settled. Settling the auction means that the asset is transferred to the buyer, the amount is transferred to the seller, and the fee is transferred to the fee recipient of the auction.
For the complete information about how the bidding/purchase process at an auction works, see the API for creating an NFT auction.
This API is supported for the following blockchains:
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the auction version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When bidding for an asset at the NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Cancel the selling of an asset at the NFT auction](https://docs.tatum.io/reference/cancelauction.md):2 credits per API call
Cancel the selling of an asset at the NFT auction.
You can cancel the selling only if you are the seller of the asset or the auction operator. Once the selling is canceled, the asset is returned to the seller.
You cannot cancel the selling if the asset has already been purchased.
This API is supported for the following blockchains:
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the auction version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When cancelling the selling of an asset at the NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Sell an asset at the NFT auction](https://docs.tatum.io/reference/createauction.md):2 credits per API call
Create new auction on the auction contract. Before operation, seller must approve spending of the NFT token for the Auction contract using Approve NFT. After auction is created, auction contract transfers the asset to the auction smart contract. Only auction for existing NFTs can be created - seller must be owner of the NFT asset.
This API is supported for the following blockchains:
A known issue on Harmony
On Harmony, when you are viewing a transaction in the Harmony Blockchain Explorer, the transaction status may be displayed as the following:
Error reverted:x0
This is a known issue with the Harmony Blockchain Explorer. This status does not mean that the transaction failed. You can safely ignore it.
Signing a transaction
When selling an asset at the NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Create an NFT auction](https://docs.tatum.io/reference/generateauction.md):2 credits per API call
Deploy new smart contract for NFT auction logic. Smart contract enables auction operator to create new auction for NFT (ERC-721/1155). Operator can set a fee in percentage, which will be paid on top of the price of the asset. can be offered for native asset - ETH, BSC, etc. - or any ERC20 token - this is configurable during auction creation. Before auction is created, seller must approve transfer of the NFT to the auction contract. Buyer will bid for the asset from the auction using native asset - send assets along the gid() smart contract call, or via ERC20 token. Buyer of the auction must perform approval for the smart contract to access ERC20 token, before the actual bid() method is called. Once there is higher bid then the actual one, the previous bidder's funds will be returned to him and new bidder will be the current winning one. When auction ends, anyone can settle the auction - NFT will be sent to the bidder, assets to the seller and fee to the operator.
This operation deploys a smart contract on the blockchain.
This API is supported for the following blockchains:
Signing a transaction
When creating an NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get information about an auctioned asset at the NFT auction](https://docs.tatum.io/reference/getauction.md):1 credit per API call
Get information about a specific auctioned asset at the NFT auction.
This API is supported for the following blockchains:
1 credit per API call
Get the NFT auction fee.
This API is supported for the following blockchains:
1 credit per API call
Get the recipient of the NFT auction fee.
This API is supported for the following blockchains:
2 credits per API call
Settle an auction once it has ended and there is a buyer of the asset at this auction. Settling the auction means that the asset is transferred to the buyer, the amount is transferred to the seller, and the fee is transferred to the fee recipient of the auction.
Both seller and buyer can settle the auction.
This API is supported for the following blockchains:
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the auction version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When settling the NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Update the NFT auction fee](https://docs.tatum.io/reference/updateauctionfee.md):2 credits per API call
Update the NFT auction fee.
This API is supported for the following blockchains:
Signing a transaction
When updating the NFT auction fee, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Update the recipient of the NFT auction fee](https://docs.tatum.io/reference/updateauctionfeerecipient.md):2 credits per API call
Update the recipient of the NFT auction fee.
This API is supported for the following blockchains:
Signing a transaction
When updating the recipient of the NFT auction, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Allow a blockchain address to transfer and burn fungible tokens](https://docs.tatum.io/reference/erc20approve.md):2 credits per API call
Allow a blockchain address (the spender parameter in the request body) to transfer and burn fungible tokens on behalf of the smart contract owner.
This API is supported for the following blockchains:
Signing a transaction
When allowing a blockchain address to transfer and burn fungible tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Burn fungible tokens](https://docs.tatum.io/reference/erc20burn.md):2 credits per API call
Burn fungible tokens. Burning fungible tokens deletes the specified supply of the tokens (the amount parameter in the request body) from the smart contract (the contractAddress parameter in the request body).
This API is supported for the following blockchains:
Signing a transaction
When burning fungible tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Deploy a fungible token smart contract](https://docs.tatum.io/reference/erc20deploy.md):2 credits per API call
Deploy a fungible token smart contract on the blockchain. In a deployed smart contract, you can mint and burn fungible tokens. The whole supply of fungible tokens (the supply parameter in the request body) will be transferred to the specified blockchain address (the address parameter in the request body).
Additionally, you can specify the number of additional digits for the token amounts using the digits parameter. Please note that the maximum value for the supply parameter with added digits is within the range of uint64.
Smart contracts are standardized and audited.
This API is supported for the following blockchains:
You can review the code of a deployed smart contract here.
Signing a transaction
When deploying a fungible token smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get the number of fungible tokens that a blockchain address holds in a smart contract](https://docs.tatum.io/reference/erc20getbalance.md):1 credit per API call
Get the number of the fungible tokens minted on a specific smart contract (the contractAddress path parameter in the request endpoint URL) that a blockchain address holds.
This API is supported for the following blockchains:
50 credit per API call
Get the number of all fungible tokens that a blockchain address holds across a blockchain. The tokens are returned grouped by the smart contracts they were minted on.
This API is supported for the following blockchains:
20 credit per API call
Get incoming and outgoing transactions related to fungible tokens on a blockchain address.
This API is supported for the following blockchains:
2 credits per API call
Create new fungible tokens in the smart contract (the contractAddress parameter in the request body) and transfer them to the specified blockchain address (the to parameter in the request body). You can mint new fungible tokens only if the current supply of tokens in the smart contract is lower than the total supply set for this contract.
This API is supported for the following blockchains:
Signing a transaction
When minting fungible tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Transfer fungible tokens](https://docs.tatum.io/reference/erc20transfer.md):2 credits per API call
Transfer a supply of fungible tokens existing in the smart contract (the contractAddress parameter in the request body) to the specified blockchain address (the to parameter in the request body).
Transferring fungible tokens invokes the transfer() method.
This API is supported for the following blockchains:
Transferring fungible tokens on Algorand
On Algorand, the recipient has to agree in advance to receive your fungible tokens because Algorand charges users for storing the tokens on their addresses, and an Algorand blockchain address by default does not receive the tokens unless explicitly agreed. Before transferring the fungible tokens, make sure that the recipient has agreed to receive the NFT to their address.
Blockchain-specific APIs to transfer fungible tokens
You can also use blockchain-specific APIs for transferring fungible tokens on the following blockchains:
Signing a transaction
When transferring fungible tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
When transferring a token on Solana blockchain, this call waits for maximum 45 seconds to check whether the transaction was confirmed on chain. If the transaction was successfully added it returns a success response. Otherwise error is returned with a message: "Transaction {##tx_hash##} has not been confirmed yet. The transaction could still be accepted by the Solana network. We advise to manually check if the transaction has been dropped or accepted before you try to send the transaction again".
- [Get the results of the address activation transaction](https://docs.tatum.io/reference/activatednotactivatedgaspumpaddresses.md):1 credit per API call
Get the results of the activation transaction after activating gas pump addresses.
If the activation transaction got recorded into a block, the API returns two arrays:
valid, with the activated gas pump addressesinvalid, with the gas pump addresses that for some reason did not get activated together with the reason whyIf the transaction is still being processed, the API returns an error message. In this case, repeat the call later.
This API is supported for the following blockchains:
2 credits per API call
Activate the precalulated gas pump addresses. Activating a gas pump address allows this address to send funds to other addresses.
You can activate up to 270 addresses in one call. If you need to activate more than 270 addresses, make several API calls. For example, if you need to activate 500 addresses, make an API call with 270 addresses (set up the range of their index values accordingly in the from and to request body parameters) and then make another API call with the remaining 230 addresses.
When to activate a gas pump address
Because activating a gas pump address costs some amount of gas on a blockchain, you want to activate only those addresses that will be used for sending funds to other addresses. If you know that a gas pump address will not be used for sending funds, you can leave this address not activated. The customer who uses this address will still be able to receive funds.
Depending on your business needs and requirements, you can choose when to activate the gas pump addresses. If you know for sure that all the precalculated addresses will be sending funds, you can activate all the addresses right after they have been precalculated.
Alternatively, you can set up the activation in such a way so that a gas pump address gets activated only when a specific event is triggered. For example, you can activate a gas pump address:
After you make an API call to activate gas pump addresses, use the API for getting the results of the address activation transaction.
Paying the gas fee for activating gas pump addresses
You can pay the gas fees for each activation transaction yourself, or Tatum can cover it for you.
ActivateGasPumpTatum. For example, if you are activating gas pump addresses on Ethereum and you use KMS, use the ActivateGasPumpKMS schema. ActivateGasPumpTatum schema of the request body. This API is supported for the following blockchains:
2 credits per API call
Allow another blockchain address (the spender parameter in the request body) to transfer the asset from a gas pump address on behalf of the master address.
Use this API when the customer using the gas pump address sells assets on a marketplace or auction. After the customer creates a listing of the asset, they have to allow the marketplace/auction smart contract to transfer the asset to the buyer after the asset has been bought.
The asset can be one of the following types:
This API is supported for the following blockchains:
Signing a transaction
When approving the transfer of an asset, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Check whether the gas pump address with a specified index is activated](https://docs.tatum.io/reference/gaspumpaddressesactivatedornot.md):1 credit per API call
Check whether the gas pump address with a specified index is activated and can send funds to other addresses.
You can use this API when a customer initiates a fund transfer and you need to check whether their gas pump address is allowed to send funds.
This API is supported for the following blockchains:
This API is deprecated.
To start with the gas pump, use the API for precalculating the gas pump addresses.
If you built your gas pump solution using this API and the API for generating a gas pump wallet address, you can still use this API for creating more custodial addresses for your solution. However, we recommend that you switch to the API for precalculating the gas pump addresses.
2 credits per API call
Generate new gas pump smart contract address on the blockchain. It's possible to enable tokens, which should be detected and supported on that address. This address enables custodial providers to receive native assets, ERC20 / ERC721 / ERC1155 tokens on behalf of their customers on dedicated blockchain address, but in the same time it can initiate transfer of those assets away.
Gas required for the transfer from that address is going to be deducted from the providers address - the one, which was used to generate the address on the blockchain.
There are multiple options, how this address can be setup - it cannot be changed in the future:
All of these options could be enabled with a batch mode as well - in 1 transaction, it is possible to transfer multiple different assets from that address, e.g. ETH + USDC + ERC721 token. Without batch mode, 3 separate transaction must have been performed.
This operation deploys a smart contract on the blockchain. More assets you will support, more intial gas will be used for address creation. Batch mode adds more gas for every type.
This API is supported for the following blockchains:
This API is deprecated.
To start with the gas pump, use the API for precalculating the gas pump addresses.
2 credits per API call
Generate new gas pump smart contract address on the blockchain. This address enables custodial providers to receive native assets, ERC20 / ERC721 / ERC1155 tokens on behalf of their customers on dedicated blockchain address, but in the same time it can initiate transfer of those assets away. Gas required for the transfer from that address is going to be deducted from the providers address - the one, which was used to generate the address on the blockchain.
This operation deploys a smart contract on the blockchain.
For paid plans, it is possible to pay for the gas costs - you don't have to provide private key or signatureId. Blockchain fees will be covered by your credits.
This API is supported for the following blockchains:
2 credits per API call
Precalculate (generate) gas pump addresses that you can assign to the customers of your custodial application.
This API does not make any changes on the blockchain itself, just generates addresses that follow the blockchain's requirements for the address format; therefore, no gas fee is applied.
This API is supported for the following blockchains:
Address index
Each address should be associated with its own index. Use the from and to request body parameters to set a range of index values for the addresses to precalculate. You can start with any number, but we recommend that you start from 0.
In one API call, you can precalculate:
If you need more addresses than one API call can precalculate, make several API calls. For example, if you need 10,000 addresses on Ethereum, make an API call with an index range from 0 through 4,999 and then make another API call with an index range from 5,000 through 9,999.
The order in which the precalculated addresses are returned in the API response is the order of the values in the index range, and the index values are assigned to the addresses accordingly.
For example, you precalculated three gas pump addresses with a range of index values from 3 to 5. The first address in the returned arrray is assigned the index value "3", the second one - "4", and the third one - "5".
[ "0x8cb76aed9c5e336ef961265c6079c14e9cd3d2ea", // index is 3 "0x5c6079c14e9cd3d2ea8cb76aed9c5e336ef96126", // index is 4 "0xc5e336ef9612614e9cd3d2ea8cb76aed95c6079c" // index is 5 ]
The owner of the gas pump addresses
The owner (also referred to as "master address") is the blockchain address that will own the precalculated gas pump addresses. The owner will also be paying gas fees for operations made on the gas pump addresses. You have to make sure that the owner always has enough funds to cover these gas fees.
Activated and not activated addresses
The precalculated addresses can be immediately assigned to customers and can receive funds. However, they cannot be used to send funds to other addresses. This is because the addresses are not activated. To make the addresses be able to send funds, activate them.
This API is deprecated.
To start with the gas pump, use the API for precalculating the gas pump addresses.
If you built your gas pump solution using the API for generating a gas pump wallet address and API for generating a custodial wallet address, you can still use this API for getting the custodial wallet address from the transaction. However, we recommend that you switch to the API for precalculating the gas pump addresses.
1 credit per API call
Get gas pump smart contract addresses from deploy transaction.
This API is supported for the following blockchains:
2 credits per API call
Transfer (send) an asset from a gas pump address to the other address.
This operation is usually performed by users in your custodial application: a user who has a gas pump address assigned wants to transfer an asset to some address on the blockchain.
The gas fee for sending the asset will be covered by crypto funds on the master address. Make sure that the master address always has enough funds to cover gas fees.
To be able to send the asset:
With this API, you can send only one asset per API call. If you want to send multiple assets, use the API for transferring multiple assets from a gas pump account.
This API is supported for the following blockchains:
Signing a transaction
When transferring an asset, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Transfer multiple assets from a gas pump address](https://docs.tatum.io/reference/transfercustodialwalletbatch.md):2 credits per API call
Transfer (send) multiple assets from a gas pump address to one or more addresses.
This operation is usually performed by users in your custodial application: a user who has a gas pump address assigned wants to transfer multiple assets to one or more addresses on the blockchain.
The gas fee for sending the assets will be covered by crypto funds on the master address. Make sure that the master address always has enough funds to cover gas fees.
To be able to send the assets:
If you want to send only one asset, you can also use the API for transferring an asset from a gas pump account.
This API is supported for the following blockchains:
Signing a transaction
When transferring assets, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Buy an asset on the NFT marketplace](https://docs.tatum.io/reference/buyassetonmarketplace.md):2 credits per API call
Buy an asset listed on the NFT marketplace.
You can buy the asset either for the native blockchain currency (for example, ETH, MATIC, and so on) or for the fungible tokens of the blockchain.
amount request body parameter).This API is supported for the following blockchains:
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When buying an asset on the NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Cancel the selling of an asset on the NFT marketplace](https://docs.tatum.io/reference/cancelsellmarketplacelisting.md):2 credits per API call
Cancel the selling of an asset on the NFT marketplace.
You can cancel the selling only if you are the seller of the asset or the marketplace operator. Once the selling is canceled, the asset is returned to the seller.
You cannot cancel the selling if the asset has already been purchased.
This API is supported for the following blockchains:
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When cancelling the selling of an asset, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Create an NFT marketplace](https://docs.tatum.io/reference/generatemarketplace.md):2 credits per API call
Deploy an NFT marketplace smart contract on the blockchain. With a deployed marketplace smart contract, you and your customers can create new listings for assets such as non-fungible tokens and combinations of token types as described by the ERC-721 and ERC-1155 standards on the Ethereum blockchain or by the equivalent standards on the other blockchains. As the marketplace operator, you can set a fee as a percentage of the asset price that will be paid on top of the asset price.
The purchase process looks like the following:
buyAssetFromListing() method is called against the marketplace smart contract) and send the required amount of the native assets to the marketplace smart contract.buyAssetFromListing() method is called against the marketplace smart contract).This API is supported for the following blockchains:
Signing a transaction
When deploying an NFT marketplace smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get the NFT marketplace fee](https://docs.tatum.io/reference/getmarketplacefee.md):1 credit per API call
Get the NFT marketplace fee.
This API is supported for the following blockchains:
1 credit per API call
Get the recipient of the NFT marketplace fee.
This API is supported for the following blockchains:
1 credit per API call
Get information about an NFT marketplace on Solana.
This API is in alpha and is supported only for the mainnet on Solana.
- [Get information about a listing on the NFT marketplace](https://docs.tatum.io/reference/getmarketplacelisting.md):1 credit per API call
Get information about a specific listing on the NFT marketplace.
This API is supported for the following blockchains:
2 credits per API call
Create a new listing for an asset on the NFT marketplace. The listing can be offered for the native blockchain assets (for example, ETH, MATIC, and so on) or for any fungible tokens.
After the listing is created, allow the marketplace smart contract to transfer the asset that you are selling.
You can create a listing only for an existing asset that you own (you must be the owner of the asset).
This API is supported for the following blockchains:
A known issue on Harmony
On Harmony, when you are viewing a transaction in the Harmony Blockchain Explorer, the transaction status may be displayed as the following:
Error reverted:x0
This is a known issue with the Harmony Blockchain Explorer. This status does not mean that the transaction failed. You can safely ignore it.
The "execution reverted" message
When making this API call, you may get the following message:
Although one or more Error Occurred [execution reverted] Contract Execution Completed
This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.
Signing a transaction
When creating a new listing on the NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Update the NFT marketplace fee](https://docs.tatum.io/reference/updatefee.md):2 credits per API call
Update the NFT marketplace fee.
You can update the marketplace fee only if you are the marketplace operator.
This API is supported for the following blockchains:
Signing a transaction
When updating the NFT marketplace fee, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Update the recipient of the NFT marketplace fee](https://docs.tatum.io/reference/updatefeerecipient.md):2 credits per API call
Update the recipient of the NFT marketplace fee.
You can update the fee recipient only if you are the marketplace operator.
This API is supported for the following blockchains:
Signing a transaction
When updating the recipient of the NFT marketplace fee, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Update an NFT marketplace on Solana](https://docs.tatum.io/reference/updatemarketplace.md):2 credits per API call
Update an NFT marketplace on Solana.
You can update it only if you are the marketplace operator.
This API is in alpha and is supported only for the mainnet on Solana.
Signing a transaction
When updating an NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Withdraw funds from the marketplace fee account on Solana](https://docs.tatum.io/reference/withdrawfeefrommarketplace.md):2 credits per API call
Withdraw funds from the NFT marketplace fee account on Solana.
You can withdraw the funds only if you are the marketplace fee recipient.
This API is in alpha and is supported only for the mainnet on Solana.
Signing a transaction
When withdrawing the funds, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Withdraw funds from the marketplace treasury account on Solana](https://docs.tatum.io/reference/withdrawtreasuryfrommarketplace.md):2 credits per API call
Withdraw funds from the NFT marketplace treasury account on Solana.
You can withdraw the funds only if you are the marketplace fee recipient.
This API is in alpha and is supported only for the mainnet on Solana.
Signing a transaction
When withdrawing the funds, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Add a Multi Token minter](https://docs.tatum.io/reference/addmultitokenminter.md):2 credits per API call
Add Multi Token minter.
This API is supported for the following blockchains:
Signing a transaction
When adding a Multi Token minter, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Burn a Multi Token](https://docs.tatum.io/reference/burnmultitoken.md):2 credits per API call
Burn a fixed amount of Multi Tokens by id. This method destroys Multi Tokens from smart contract defined in contractAddress.
This API is supported for the following blockchains:
Signing a transaction
When burning a Multi Token, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Burn multiple Multi Tokens](https://docs.tatum.io/reference/burnmultitokenbatch.md):2 credits per API call
Burn multiple Multi Token Tokens by id assigned to same address in one transaction. This method destroys any Multi Tokens token from smart contract defined in contractAddress.
This API is supported for the following blockchains:
Signing a transaction
When burning multiple Multi Tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Deploy a Multi Token smart contract](https://docs.tatum.io/reference/deploymultitoken.md):2 credits per API call
Deploy Multi Token Smart Contract. This method creates new ERC1155 Smart Contract (Multi Tokens) on the blockchain. Smart contract is standardized and audited. It is possible to mint, burn and transfer tokens. It is also possible to mint multiple tokens at once.
This API is supported for the following blockchains:
Signing a transaction
When deploying a Multi Token smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Mint a Multi Token](https://docs.tatum.io/reference/mintmultitoken.md):2 credits per API call
Mint a fixed amount of Multi Token and transfer it to destination account. Create and transfer any Multi Token token from smart contract defined in contractAddress. It is possible to add Metadata to the created token with a more detailed information about instead.
This API is supported for the following blockchains:
Signing a transaction
When minting a Multi Token, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Mint multiple Multi Tokens](https://docs.tatum.io/reference/mintmultitokenbatch.md):2 credits per API call
Create a fixed amount of multiple Multi Tokens Tokens and transfer them to destination account in one transaction. Create and transfer Multi Tokens tokens from smart contract defined in contractAddress.
This API is supported for the following blockchains:
Signing a transaction
When minting multiple Multi Tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get all Multi Tokens that a blockchain address holds](https://docs.tatum.io/reference/multitokengetaddressbalance.md):50 credit per API call
This endpoint is deprecated.
Get all Multi Tokens that a blockchain address holds. The Multi Tokens are returned grouped by the smart contracts they were minted on.
This API is supported for the following blockchains:
1 credit per API call
Get the amount of a specific Multi Token (minted on the smart contract specified by the contractAddress path parameter in the request endpoint URL) that a blockchain address holds.
This API is supported for the following blockchains:
1 credit per API call
For multiple blockchain addresses, get the amount of one or multiple Multi Tokens (minted on the smart contract specified by the contractAddress path parameter in the request endpoint URL) that those addresses hold.
This API is supported for the following blockchains:
This endpoint is deprecated. Do not use it.
Instead, use this API.
1 credit per API call
Get Multi Token contract address from deploy transaction.
This API is supported for the following blockchains:
1 credit per API call
Get Multi Token metadata.
This API is supported for the following blockchains:
1 credit per API call
Get Multi Token transaction by transaction hash.
This API is supported for the following blockchains:
20 credit per API call
Get incoming and outgoing Multi Token transactions on a blockchain address.
This API is supported for the following blockchains:
2 credits per API call
Transfer a certain amount of Multi Token from account to another account. Transfer Multi Tokens token from smart contract defined in contractAddress.
Only 1 specific token with specified tokenId and value can be transferred. This method invokes ERC1155 method safeTransfer() to transfer the token in case of ETH, Celo and blockchains.
This API is supported for the following blockchains:
Signing a transaction
When transferring a Multi Token, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Transfer multiple Multi Tokens](https://docs.tatum.io/reference/transfermultitokenbatch.md):2 credits per API call
Transfer Multi Token Batch from account to various other accounts in one transaction. Transfer multiple Multi Tokens token from smart contract defined in contractAddress.
Multiple token with specified tokenIds and values can be transferred. This method invokes ERC1155 method safeTransfer() to transfer the token in case of ETH, Celo and BSC.
This API is supported for the following blockchains:
Signing a transaction
When transferring multiple Multi Tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Add a blockchain address as an NFT minter to an NFT smart contract](https://docs.tatum.io/reference/nftaddminter.md):2 credits per API call
Allow a blockchain address (the minter parameter in the request body) to mint NFTs on your NFT smart contract (the contractAddress parameter in the request body).
NOTE: Use this API only when you are using NFT Express with your own smart contract. For more information, see "Use your own smart contract to mint NFTs" in Mint an NFT.
Do not use this API in any other case.
This API is supported for the following blockchains:
Signing a transaction
When allowing a blockchain address to mint NFTs, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Burn an NFT](https://docs.tatum.io/reference/nftburnerc721.md):2 credits per API call
Destroy an NFT. Burning the NFT transfers it to an un-spendable blockchain address that no one can access.
This API is supported for the following blockchains:
Burning NFTs on Algorand
You can burn only the NFTs that were minted with the address of the manager account specified in the manager parameter in the minting call (see the MintNftExpressAlgorand, MintNftAlgorand, and MintNftAlgorandKMS schemas of the request body).
Burning NFTs on Tezos
You can burn only the NFTs if you are admin or minter of the contract
Signing a transaction
When burning an NFT, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Deploy an NFT smart contract](https://docs.tatum.io/reference/nftdeployerc721.md):2 credits per API call
Deploy an NFT smart contract on the blockchain. In a deployed NFT smart contract, you can mint NFTs (one NFT at a time or multiple NFTs at once), burn, and transfer NFTs.
Smart contracts are standardized and audited. You can review the code of a deployed NFT smart contract here.
This API is supported for the following blockchains:
General NFT smart contracts
By default, an NFT smart contract is deployed as a general NFT smart contract compatible with OpenSea royalties. This is a standard NFT contract with AccessControl and Ownable, enhanced with NFT batch minting. NFTs minted on this smart contract are compatible with OpenSea and its royalty structure.
You can enable public minting for smart contracts. By default, public minting is disabled, which means that only the blockchain address whose private key was used to create the smart contract or the blockchain addresses added to the smart contract as NFT minters will be able to mint NFTs for the contract. To enable public minting and allow anyone to mint NFTs on top of the smart contract, deploy the contract with the publicMint parameter set to true in the request body.
NFT smart contracts and NFT Express
If you want to use NFT Express to mint NFTs on the deployed smart contract, deploy the smart contract as a general NFT smart contract.
After you have deployed the NFT smart contract, add the Tatum minter address as an NFT minter to your smart contract.
For the complete information about using NFT Express on your smart contract, see "Use your own smart contract to mint NFTs" in Mint an NFT.
Signing a transaction
When deploying an NFT smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get the NFTs from a specific smart contract that a blockchain address holds](https://docs.tatum.io/reference/nftgetbalanceerc721.md):1 credit per API call
Get the NFTs minted on a specific smart contract (the contractAddress path parameter in the request endpoint URL) that a blockchain address holds.
NOTE: This API works only for the NFT smart contracts deployed using the Tatum smart contract API.
This API is supported for the following blockchains:
This endpoint is deprecated. Do not use it.
Instead, use this API.
1 credit per API call
Get NFT contract address from deploy transaction.
This API is supported for the following blockchains:
1 credit per API call
Get metadata of an NFT.
This API is supported for the following blockchains:
50 credit per API call + 5 credits for each owned NFT
This endpoint is deprecated.
Get all NFTs that a blockchain address holds. The NFTs are returned grouped by the smart contracts they were minted on.
This API is supported for the following blockchains:
On Solana and Algorand, if a blockchain address holds fewer than 50 NFTs, the API also returns each NFT's metadata. If the metadata is not returned, you can obtain it using the API for getting NFT metadata.
- [Get all NFTs from a collection](https://docs.tatum.io/reference/nftgettokensbycollectionerc721.md):20 credit per API call + 10 credits for each listed NFT
Get all NFTs from a collection (all the NFTs that were minted on the smart contract).
This API is supported for the following blockchains:
1 credit per API call
Get an NFT transaction by its hash.
This API is supported for the following blockchains:
20 credit per API call
Get incoming and outgoing NFT transactions on a blockchain address.
This API is supported for the following blockchains:
20 credit per API call
Get incoming and outgoing transactions for an NFT.
This API is supported for the following blockchains:
2 credits per API call
You can mint NFTs using either of the following methods:
NFT Express is Tatum's feature that helps you mint NFTs easier than minting natively on a blockchain.
With NFT Express, you can choose whether to mint NFTs on the pre-built NFT smart contract provided by Tatum or on your own smart contract.
If you want to mint NFTs using the pre-built smart contract, you do not need to deploy your own NFT smart contract. You do not need to provide the address of the NFT smart contract and the token ID in the request body either. The address of the smart contract and the token ID are provided automatically by Tatum.
The token ID is autogenerated. It starts with 0 and is increased by 1 for each new NFT. The token ID is calculated separately for each supported blockchain and its mainnet and testnet.
For more information, see our user documentation.
You can mint NFTs on the pre-built smart contract provided by Tatum on the following blockchains:
Depending on what blockchain you use, choose the request body schema to use in the API call.
MintNftExpress schema of the request body.MintNftExpressAlgorand schema of the request body.manager parameter.MintNftExpressTezos schema of the request body. In order to use this function, it is necessary to deploy the contract using NFT Express transferNftAlgoExpress schema of the request body).MintNftExpressSolana schema of the request body.to parameter of the request body). This address is returned in the nftAccountAddress parameter in the response body, is owned by the recipient's address, and has the same private key.nftAddress parameter.If you want to mint NFTs using your own smart contract, you are going to use an NTF minter, a special blockchain address provided by Tatum that will cover the minting fees. The number of credits equivalent to the fees will be then deducted from the monthly credit allowance of your paid pricing plan.
For more information, see our user documentation and the article in the Tatum blog.
You can mint NFTs on your own smart contract on the following blockchains:
To mint NFTs using your own smart contract, do the following:
MintNftMinter schema of the request body.chain is the blockchain that you use.to is the blockchain address where to send the minted NFT to.url is the URL of the NFT metadata.minter is the address of the NFT minter that you found in Step 1.contractAddress is the address of your NFT smart contract.tokenId is the the token ID of the NFT. { "chain": "CELO", "to": "0x8ce4e40889a13971681391aad29e88efaf91f784", "url": "ipfs://QmXJJ6UF5WkF4WTJvsdhiA1etGwBLfpva7Vr9AudGMe3pj", "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85", "tokenId": "0123", "minter": "0xBC2eBA680EE50d685cc4Fe65f102AA70AfB27D3F" } When you make an API call with this request body, the private key of the NFT minter will be added to the request body automatically: { "chain": "CELO", "to": "0x8ce4e40889a13971681391aad29e88efaf91f784", "url": "ipfs://QmXJJ6UF5WkF4WTJvsdhiA1etGwBLfpva7Vr9AudGMe3pj", "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85", "tokenId": "0123", "minter": "0xBC2eBA680EE50d685cc4Fe65f102AA70AfB27D3F", "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2" } The following table lists the blockchain addresses of the Tatum NFT minters for the testnet and mainnet of the supported blockchains:
| Blockchain | Minter address - testnet* | Minter address - mainnet** |
|---|---|---|
| BNB Smart Chain | 0xc16ae5e8c985b906935a0cadf4e24f0400531883 | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
| Celo | 0xBC2eBA680EE50d685cc4Fe65f102AA70AfB27D3F | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
| Ethereum | 0x53e8577C4347C365E4e0DA5B57A589cB6f2AB848 | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
| Harmony | 0x8906f62d40293ddca77fdf6714c3f63265deddf0 | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
| Klaytn | 0x80d8bac9a6901698b3749fe336bbd1385c1f98f2 | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
| Polygon | 0x542b9ac4945a3836fd12ad98acbc76a0c8b743f5 | 0x49678AAB11E001eb3cB2cBD9aA96b36DC2461A94 |
*If a minter blockchain address on the testnet does not have sufficient funds to cover the transaction fee, add some amount to it using a crypto faucet of the blockchain.
**To be able to use NFT Express on the mainnet, you have to have a paid pricing plan.
For Ethereum specifically, we recommend an Enterprise Plan because transaction fees on Ethereum are very high.
When minting an NFT natively on a blockchain, you are using your own smart contract. You are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
You can mint NFTs natively on the following blockchains:
Depending on what blockchain you use, choose the request body schema to use in the API call.
MintNftAlgorand schema of the request body.MintNftAlgorandKMS schema of the request body.manager parameter.MintNft schema of the request body.MintNftKMS schema of the request body.MintNftCelo schema of the request body.MintNftKMSCelo schema of the request body.MintNftSolana schema of the request body.MintNftSolanaKMS schema of the request body.MintNftTron schema of the request body.MintNftKMSTron schema of the request body.MintNftTezos schema of the request body.MintNftKadena schema of the request body.2 credits per API call
Create multiple NFT Tokens and transfer them to destination account. Create and transfer any NFT tokens from smart contract defined in contractAddress.
This API is supported for the following blockchains:
{ "to": ["0x80d8bac9a6901698b3749fe336bbd1385c1f98f2"], "url": ["ipfs://QmXJJ6UF5WkF4WTJvsdhiA1etGwBLfpva7Vr9AudGMe3pj"], "tokenId": ["9876541124516"], "contractAddress":"0x3cbb48f740595ed846abb641adfcd9f04588348d", "minter": "0x542b9ac4945a3836fd12ad98acbc76a0c8b743f5", "chain": "MATIC" } The blockchain fee of the performed transaction is paid from the address connected with built-in private key and is debited in form of credits. The credits are debited only if NFT mint requests are performed with paid API key plan. We transform fee to the credits in accordance to the rates provided by the Tatum. If you want to batch mint on ERC-721 contract which is not deployed via Tatum API, your smart contract must contain this method: mintMultiple(address[] to, uint256[] tokenId, string[] uri): booleanYou can use addresses specified in the bellow table to be used as a minter.
| Chain | Testnet address | Mainnet Address |
|---|---|---|
| MATIC | 0x542b9ac4945a3836fd12ad98acbc76a0c8b743f5 | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
| BSC | 0xc16ae5e8c985b906935a0cadf4e24f0400531883 | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
| ONE | 0x8906f62d40293ddca77fdf6714c3f63265deddf0 | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
| ETH | 0x53e8577C4347C365E4e0DA5B57A589cB6f2AB848 | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
| CELO | 0xBC2eBA680EE50d685cc4Fe65f102AA70AfB27D3F | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
| KLAY | 0x80d8bac9a6901698b3749fe336bbd1385c1f98f2 | 0xcf9e127455d28e7362380aec1b92ddee8200b295 |
2 credits per API call
Transfer an NFT from the smart contract (the contractAddress parameter in the request body) to the specified blockchain address (the to parameter in the request body).
In one API call, you can transfer only one NFT.
This API is supported for the following blockchains:
For Ethereum, Celo, Flare and BNB Smart Chain, transferring NFTs invokes the safeTransfer() method.
Transferring NFTs on Algorand
transferNftAlgoExpress schema of the request body.Transferring NFTs on Solana
If you want to transfer an NFT that was minted using NFT Express, use the transferNftSolana or transferNftSolanaKMS schema of the request body. In the request body:
from parameter to the address that you used in the to parameter in the request body of the minting call.to parameter to the recipient's address.contractAddress parameter to the address from the nftAddress parameter returned in the response body of the minting call.fromPrivateKey/signatureId parameter to the private key/signature ID of the blockchain address that you specified in the from parameter.Signing a transaction
When transferring an NFT, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
NOTE: This does not apply to transferring NFTs that were minted on Algorand using NFT Express (see earlier in this section).
- [Verify an NFT in an NFT collection on Solana](https://docs.tatum.io/reference/nftverifyincollection.md):2 credits per API call
Verify an NFT in an NFT collection on Solana. Verifying an NFT sets the Verified parameter to true for the NFT, which means that the NFT is really a part of the collection. To know more about Solana collections and verification, refer to the Solana user documentation.
The collection must be a sized collection that was introduced in Version 1.3 of the Metaplex Token Metadata program. The NFT must have been minted in this collection.
This API is supported only for Solana.
Signing a transaction
When verifying an NFT, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Get a log record](https://docs.tatum.io/reference/getlog.md):1 credit per API call
Get a log data record from the Ethereum blockchain (only the mainnet or the Sepolia testnet).
- [Store a log record](https://docs.tatum.io/reference/storelog.md):2 credits per API call + additional credits based on the size of the stored data and the type of the blockchain
Store data on the blockchain.
The total cost of a transaction on Ethereum (in credits) depends on the size of the data. The data is stored as a string in the hexadecimal format, and the maximum size of the data is approximately 130 kB on the mainnet and 30 kB on testnet. Every 5 characters cost 1 credit.
Therefore, one API call with 1 kB of data (1024 characters) would cost 205 credits.
This API is supported for the following blockchains:
Gets data from the IPFS.
- [Store data to IPFS](https://docs.tatum.io/reference/storeipfs.md):Stores file on the IPFS. We are leveraging web3.storage from Protocol Labs for free storage on the IPFS.
- [Estimate the block height for a future point in time](https://docs.tatum.io/reference/getauctionestimatedtime.md):1 credit per API call
Get an estimated block height (number) for some future point in time.
Note that this API returnes an estimation of what the block height might be and not the exact block height.
This API is supported for the following blockchains:
1 credit per API call
Get the blockchain address of a smart contract by the ID of its deployment transaction.
This API is supported for the following blockchains:
Freeze the API Key. It's not possible to perform sensitive operations like send ledger transaction, send off-chain transaction, send blockchain transaction, broadcast blockchain transaction, perform Order book trade or create blockage. Only read operations are permitted.
- [Get information about your credit consumption for the last month](https://docs.tatum.io/reference/getcreditsv3.md):1 credit per API call
Get information about your v3 key credit consumption for the last month (used credits per day).
- [Get information about your credit consumption for the last month](https://docs.tatum.io/reference/getcreditsv4.md):1 credit per API call
Get information about your v4 key credit consumption for the last month (used credits per day).
- [Get API version](https://docs.tatum.io/reference/getversion.md):Get current version of the API.
- [Unfreeze API Key](https://docs.tatum.io/reference/unfreezeapikey.md):Unfreeze the API Key. It's possible to perform sensitive operations like send ledger transaction, send off-chain transaction, send blockchain transaction, broadcast blockchain transaction, perform Order book trade or create blockage again.
- [Activate account](https://docs.tatum.io/reference/activateaccount.md):Activates an account.
- [Block an amount in an account](https://docs.tatum.io/reference/blockamount.md):Blocks an amount in an account. Any number of distinct amounts can be blocked in one account. Every new blockage has its own distinct ID, which is used as a reference. When the amount is blocked, it is debited from the available balance of the account. The account balance remains the same. The account balance represents the total amount of funds in the account. The available balance represents the total amount of funds that can be used to perform transactions. When an account is frozen, the available balance is set to 0 minus all blockages for the account.
- [Create a virtual account](https://docs.tatum.io/reference/createaccount.md):2 credits per API call
Create a new virtual account for a customer.
You can create a virtual account for any supported cryptocurrency, fiat currency, Tatum virtual currency, or fungible tokens created within Tatum. Once the currency/asset is set for a virtual account, it cannot be changed.
Virtual account balance
A virtual account has its own balance. The balance can be logically presented by the account balance and available balance:
accountBalance) represents all assets on the account, both available and blocked.availableBalance) represents the account balance minus the blocked assets. Use the available balance to determine how much a customer can send or withdraw from their virtual account.Cryptocurrency virtual accounts
When you create a virtual account based on a cryptocurrency (for example, BTC or ETH), you have to provide the extended public key (xpub) of the blockchain wallet that will be connected to this account.
NOTE: Adding xpub to the virtual account does not connect any specific blockchain address to this account. xpub is a generator of addresses, not an address itself.
Not all blockchains provide xpub for wallets, or Tatum may not support wallets on some blockchains. In such cases, use the wallet address or the account address instead.
xpub provided; use address from the generated wallet instead.xpub from the generated wallet.xpub provided; use address from the generated wallet instead.xpub from the generated wallet instead.xpub from the generated wallet instead.xpub from the generated wallet.xpub from the generated wallet.xpub provided; use address from the generated blockchain address instead.xpub from the generated wallet.xpub from the generated wallet.xpub from the generated wallet.xpub from the generated wallet.xpub from the generated wallet.xpub provided; use address from the generated wallet instead.xpub from the generated wallet.xpub from the generated wallet.xpub provided; use address from the generated account instead.xpub provided; use address from the generated account instead.Connect a virtual account to the blockchain
xpub, generate a new blockchain address for this account.xpub, assign an existing blockchain address to this account.You can connect multiple blockchain addresses to one virtual account.
Digital assets:
0x2791bca1f2de4661ed88a30c99a7a9449aa84174 on Polygon mainnet.0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 on Polygon mainnet.Creates new accounts for the customer in a batch call.
- [Deactivate account](https://docs.tatum.io/reference/deactivateaccount.md):Deactivates an account. Only accounts with account and available balances of zero can be deactivated. Deactivated accounts are not visible in the list of accounts, it is not possible to send funds to these accounts or perform transactions. However, they are still present in the ledger and all transaction histories.
- [Unblock all blocked amounts in an account](https://docs.tatum.io/reference/deleteallblockamount.md):Unblocks previously blocked amounts in an account. Increases the available balance in the account where the amount was blocked.
- [Unblock a blocked amount in an account](https://docs.tatum.io/reference/deleteblockamount.md):Unblocks a previously blocked amount in an account. Increases the available balance in the account where the amount was blocked.
- [Freeze account](https://docs.tatum.io/reference/freezeaccount.md):Disables all outgoing transactions. Incoming transactions to the account are available. When an account is frozen, its available balance is set to 0. This operation will create a new blockage of type ACCOUNT_FROZEN, which is automatically deleted when the account is unfrozen.
- [Get account balance](https://docs.tatum.io/reference/getaccountbalance.md):Get balance for the account.
- [Get account by ID](https://docs.tatum.io/reference/getaccountbyaccountid.md):Gets active account by ID. Displays all information regarding the given account.
- [List all accounts](https://docs.tatum.io/reference/getaccounts.md):Lists all accounts. Inactive accounts are also visible.
- [List all customer accounts](https://docs.tatum.io/reference/getaccountsbycustomerid.md):Lists all accounts associated with a customer. Only active accounts are visible.
- [Count of found entities for get accounts request](https://docs.tatum.io/reference/getaccountscount.md):Count of accounts that were found from /v3/ledger/account
- [Get blocked amounts in an account](https://docs.tatum.io/reference/getblockamount.md):Gets blocked amounts for an account.
- [Get blocked amount by ID](https://docs.tatum.io/reference/getblockamountbyid.md):Gets blocked amount by id.
- [Unblock an amount in an account and perform a transaction](https://docs.tatum.io/reference/unblockamountwithtransaction.md):Unblocks a previously blocked amount in an account and invokes a ledger transaction from that account to a different recipient. If the request fails, the amount is not unblocked.
- [Unfreeze account](https://docs.tatum.io/reference/unfreezeaccount.md):Unfreezes a previously frozen account. Unfreezing a non-frozen account not affect the account.
- [Update account](https://docs.tatum.io/reference/updateaccountbyaccountid.md):Update account by ID. Only a small number of fields can be updated.
- [Check whether a blockchain address is assigned to a virtual account](https://docs.tatum.io/reference/addressexists.md):1 credit per API call
Check whether a blockchain address with the specified cryptocurrency is registered within Tatum and is assigned to a virtual account (that is, whether this blockchain address is a deposit address associated with the virtual account).
If the blockchain address is assigned to a virtual account, information about this account is returned. Otherwise, an error message is returned.
- [Assign a blockchain address to a virtual account](https://docs.tatum.io/reference/assignaddress.md):2 credits per API call
Assign an existing blockchain address to a virtual account. The blockchain address becomes a deposit address associated with this account.Use this API when the virtual account has no default extended public key (xpub) and deposit addresses are handled manually.
You can assign multiple blockchain addresses to one virtual account. When you have multiple blockchain addresses assigned to the same virtual account, you aggregate various blockchain transactions from different addresses under a single account.
You can deposit funds from another blockchain address to a deposit address associated with the virtual account, and the funds will be credited to that virtual account.
Scanning for incoming deposits
By default, deposit addresses are scanned for incoming deposits. Deposit addresses are automatically synchronized with the associated virtual account, and you can see incoming deposits on the virtual account.
Scanning deposit addresses for incoming deposits consumes 20 credits per address per day.
If you want to be notified about certain events occurring on the deposit addresses, create an alert.
- [Create a deposit address for a virtual account](https://docs.tatum.io/reference/generatedepositaddress.md):2 credits per API call
Create a deposit address associated with a virtual account.
You can create multiple deposit addresses for one virtual account. When you have multiple deposit addresses created for the same virtual account, you aggregate various blockchain transactions from different addresses under a single account.
You can deposit funds from another blockchain address to a deposit address associated with the virtual account, and the funds will be credited to that virtual account.
Scanning for incoming deposits
By default, deposit addresses are scanned for incoming deposits. Deposit addresses are automatically synchronized with the associated virtual account, and you can see incoming deposits on the virtual account.
Scanning deposit addresses for incoming deposits consumes 20 credits per address per day.
If you want to be notified about certain events occurring on the deposit addresses, create an alert.
Virtual account cryptocurrency
Depending on the cryptocurrency of the virtual account, this API generates:
For fore information about supported blockchains and address types, see the API for creating virtual accounts.
Deposit addresses are generated in the natural order of the extended public key provided in the virtual account. The derivation index is the representation of that order; it starts from 0 and ends at 2^31.
When a new deposit address is generated, the last not used index is used to generate the address. You can skip some addresses to a different index, which means all the skipped addresses will no longer be used.
- [Create multiple deposit addresses for a virtual account](https://docs.tatum.io/reference/generatedepositaddressesbatch.md):2 credits per API call + 1 credit for each created address.
Create multiple deposit addresses associated with a virtual account.
When you have multiple deposit addresses created for the same virtual account, you aggregate various blockchain transactions from different addresses under a single account.
You can deposit funds from another blockchain address to a deposit address associated with the virtual account, and the funds will be credited to that virtual account.
Scanning for incoming deposits
By default, deposit addresses are scanned for incoming deposits. Deposit addresses are automatically synchronized with the associated virtual account, and you can see incoming deposits on the virtual account.
Scanning deposit addresses for incoming deposits consumes 20 credits per address per day.
If you want to be notified about certain events occurring on the deposit addresses, create an alert.
Virtual account cryptocurrency
Depending on the cryptocurrency of the virtual account, this API generates:
For fore information about supported blockchains and address types, see the API for creating virtual accounts.
Deposit addresses are generated in the natural order of the extended public key provided in the virtual account. The derivation index is the representation of that order; it starts from 0 and ends at 2^31.
When a new deposit address is generated, the last not used index is used to generate the address. You can skip some addresses to a different index, which means all the skipped addresses will no longer be used.
- [Get all deposit addresses for a virtual account](https://docs.tatum.io/reference/getalldepositaddresses.md):1 credit per API call
Get all deposit addresses generated for a virtual account.
- [Remove a deposit address from a virtual account](https://docs.tatum.io/reference/removeaddress.md):1 credit per API call
Remove a deposit address from the virtual account.
The deposit address will no longer be scanned for incoming deposits. You will no longer be able to generate this address again.
- [Estimate ledger to blockchain transaction fee](https://docs.tatum.io/reference/offchainestimatefee.md):Estimate current transaction fee for ledger to blockchain transaction.
Supported blockchains:
Send ADA (Cardano) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy an Algorand ERC-20-equivalent smart contract. This is a helper method, which is combination of Register new Algorand ERC20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying an Algorand ERC-20-equivalent smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send ALGO from a virtual account to the blockchain](https://docs.tatum.io/reference/algotransfer.md):4 credits per API call
Send Algos or ERC-20-equivalent Algorand tokens from a virtual account (even from a virtual account without deposit addresses adssigned) to the Algorand blockchain.
The recipient has to agree in advance to receive assets because Algorand charges users for storing assets on their addresses, and an Algorand blockchain address by default does not receive assets unless explicitly agreed. Before sending any asset from a virtual account to the blockchain, make sure that the recipient has agreed to receive the assets to their address.
Sending Algorand assets creates an internal Tatum withdrawal request with an ID. If everything works as expected, the withdrawal request is marked as complete and a transaction ID is assigned to it.
Signing a transaction
When sending Algos or ERC-20-equivalent Algorand tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send Arbitrum from a virtual account to the blockchain](https://docs.tatum.io/reference/arbitrumtransfer.md):4 credits per API call
Send ETH_ARB or ERC-20-equivalent Arbitrum tokens from a virtual account (even from a virtual account without deposit addresses adssigned) to the Arbitrum blockchain.
The recipient has to agree in advance to receive assets because Arbitrum charges users for storing assets on their addresses, and an Arbitrum blockchain address by default does not receive assets unless explicitly agreed. Before sending any asset from a virtual account to the blockchain, make sure that the recipient has agreed to receive the assets to their address.
Sending Arbitrum assets creates an internal Tatum withdrawal request with an ID. If everything works as expected, the withdrawal request is marked as complete and a transaction ID is assigned to it.
Signing a transaction
When sending ETH_ARB or ERC-20-equivalent Arbitrum tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send Base from a virtual account to the blockchain](https://docs.tatum.io/reference/basetransfer.md):4 credits per API call
Send BASE or ERC-20-equivalent BASE tokens from a virtual account (even from a virtual account without deposit addresses adssigned) to the Base blockchain.
The recipient has to agree in advance to receive assets because Base charges users for storing assets on their addresses, and an Base blockchain address by default does not receive assets unless explicitly agreed. Before sending any asset from a virtual account to the blockchain, make sure that the recipient has agreed to receive the assets to their address.
Sending Base assets creates an internal Tatum withdrawal request with an ID. If everything works as expected, the withdrawal request is marked as complete and a transaction ID is assigned to it.
Signing a transaction
When sending Base or ERC-20-equivalent Base tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send BCH from a virtual account to the blockchain](https://docs.tatum.io/reference/bchtransfer.md):Send BCH (Bitcoin Cash) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Create a BNB-based asset in a virtual account. The asset must first be created and configured on BNB Beacon Chain blockhain.
This API call will create an internal virtual currency. You can create virtual accounts with off-chain support.
- [Send BNB from a virtual account to the blockchain](https://docs.tatum.io/reference/bnbtransfer.md):
Send BNB (BNB Beacon Chain) or BNB assets from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. When every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a BNB Smart Chain BEP-20 smart contract. This is a helper method, which is combination of Register new BEP20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a BNB Smart Chain BEP-20 smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send BSC from a virtual account to the blockchain](https://docs.tatum.io/reference/bscorbeptransfer.md):Send BSC (BNB Smart Chain) or BEP-20 tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Send BTC (Bitcoin) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a Celo ERC-20-equivalent smart contract. This is a helper method, which is combination of Register new Celo ERC-20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a Celo ERC-20-equivalent smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send CELO from a virtual account to the blockchain](https://docs.tatum.io/reference/celoorerc20transfer.md):Send CELO (Celo), ERC-20-equivalent Celo tokens, cUSD, or cEUR from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
This method is deprecated.
Use this method instead.
First step to create new BEP20 token with given supply on BSC blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of BEP20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with BEP20 token name as account's currency.
Newly created account is frozen until the specific BEP20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create BEP20 smart contract with Tatum private ledger support:
This method is deprecated.
Use this method instead.
First step to create new ERC-20 token with given supply on Celo blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of ERC-20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with ERC-20 token name as account's currency.
Newly created account is frozen until the specific ERC-20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create ERC-20 smart contract with Tatum private ledger support:
This method is deprecated.
Use this method instead.
First step to create new ERC20 token with given supply on Ethereum blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of ERC20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with ERC20 token name as account's currency.
Newly created account is frozen until the specific ERC20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create ERC20 smart contract with Tatum private ledger support:
This method is deprecated.
Use this method instead.
First step to create new HRM20 token with given supply on ONE blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of HRM20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with HRM20 token name as account's currency.
Newly created account is frozen until the specific HRM20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create HRM20 smart contract with Tatum private ledger support:
First step to create new TRC 10/20 token with given supply on the Tron blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of TRC 10/20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with TRC 10/20 token name as account's currency.
Newly created account is frozen until the specific TRC 10/20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create TRC 10/20 smart contract with Tatum private ledger support:
This method is deprecated.
Use this method instead.
First step to create new ERC20 token with given supply on XDC blockchain with support of Tatum's private ledger.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of ERC20 token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with ERC20 token name as account's currency.
Newly created account is frozen until the specific ERC20 smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create ERC20 smart contract with Tatum private ledger support:
Send DOGE (Dogecoin) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Send EGLD from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy an Ethereum ERC-20 smart contract. This is a helper method, which is combination of Register new ERC20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying an Ethereum ERC-20 smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send ETH from a virtual account to the blockchain](https://docs.tatum.io/reference/ethtransfer.md):Send ETH (Ethereum) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Send Ethereum ERC-20 tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a KuCoin Community Chain (KCC) ERC-20-equivalent smart contract. This is a helper method, which is combination of Register new Kcs ERC20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a KCC ERC-20-equivalent smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send KCS from a virtual account to the blockchain](https://docs.tatum.io/reference/kcstransfer.md):Send KCS (KuCoin Community Chain (KCC)) or ERC-20-equivalent KCC tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a Klaytn ERC-20-equivalent smart contract. This is a helper method, which is combination of Register new ERC20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a Klaytn ERC-20-equivalent smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send KLAY from a virtual account to the blockchain](https://docs.tatum.io/reference/klaytransfer.md):Send KLAY or ERC-20-equivalent tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Send LTC (Litecoin) from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a Harmony HRM-20 smart contract. This is a helper method, which is combination of Register new HRM20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a Harmony HRM-20 smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send ONE from a virtual account to the blockchain](https://docs.tatum.io/reference/onetransfer.md):Send ONE (Harmony) or HRM-20 tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Send OPTIMISM or ERC-20-equivalent OPTIMISM tokens from a virtual account (even from a virtual account without deposit addresses adssigned) to the Optimism blockchain.
The recipient has to agree in advance to receive assets because Optimism charges users for storing assets on their addresses, and an Optimism blockchain address by default does not receive assets unless explicitly agreed. Before sending any asset from a virtual account to the blockchain, make sure that the recipient has agreed to receive the assets to their address.
Sending Optimism assets creates an internal Tatum withdrawal request with an ID. If everything works as expected, the withdrawal request is marked as complete and a transaction ID is assigned to it.
Signing a transaction
When sending Optimism or ERC-20-equivalent Optimism tokens, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
- [Send MATIC from a virtual account to the blockchain](https://docs.tatum.io/reference/polygontransfer.md):Send MATIC (Polygon) or ERC-20-equivalent Polygon tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
This is the first step to create a new ERC-20 or ERC-20 equivalent token with some supply in a virtual account.
This method only creates Tatum Private ledger virtual currency with predefined parameters. It will not generate any blockchain smart contract.
The whole supply of token is stored in the customer's newly created account. Then it is possible to create new Tatum accounts with token name as account's currency.
Newly created account is frozen until the specific smart contract address is linked with the Tatum virtual currency, representing the token.
Order of the steps to create smart contract with Tatum private ledger support:
10 credits per API call
Send SOL (Solana), USDC_SOL, or custom SPL tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. When every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
It is possible to perform ledger to blockchain transaction for ledger accounts without blockchain address assigned to them.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and losing funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
- [Set the contract address of a Celo ERC-20-equivalent token](https://docs.tatum.io/reference/storeceloerc20address.md):This method is deprecated.
Use this method instead.
2 credits per API call
Set the contract address of an ERC-20, ERC-20-equivalent (for example, BEP-20, HRM-20, and so on), or TRC-10 token to be able to communicate with the smart contract.
After creating and deploying the token to the blockchain, the smart contract address is generated and must be set within Tatum. If the address is not set, the Tatum platform will not be able to detect incoming deposits of the tokens and transfer the tokens from virtual accounts to blockchain addresses.
NOTE:
assetId), for example, 55351976.tokenId), for example, 1234567.This method is deprecated.
Use this method instead.
10 credits per API call
Deploy a TRON TRC-10 or TRC-20 smart contract. This is a helper method, which is combination of Register new TRC-10/20 token in the ledger and Deploy blockchain TRC20 or Deploy blockchain TRC10.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a TRON TRC-10 or TRC-20 smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send TRON from a virtual account to the blockchain](https://docs.tatum.io/reference/trontransferoffchain.md):Send TRON or TRX assets from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
4 credits per API call
Deploy a XinFin ERC-20-equivalent smart contract. This is a helper method, which is combination of Register new ERC20 token in the ledger and Deploy blockchain ERC20.
After deploying a contract to blockchain, the contract address will become available and must be stored within Tatum. Otherwise, it will not be possible to interact with it and starts automatic blockchain synchronization.
Signing a transaction
When deploying a XinFin ERC-20-equivalent smart contract to the blockchain and a virtual account, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.
Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.
For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.
- [Send XDC from a virtual account to the blockchain](https://docs.tatum.io/reference/xdctransfer.md):Send XDC (XinFin) or ERC-20-equivalent XinFin tokens from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. If every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Create an XLM-based asset in a virtual account. The asset must be created and configured on the Stellar blockchain before creating a trust line.
This API call will create an internal virtual currency. You can create virtual accounts with off-chain support.
- [Send XLM from a virtual account to the blockchain](https://docs.tatum.io/reference/xlmtransfer.md):10 credits per API call
Send XLM (Stellar) or XLM-based assets from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. When every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
It is possible to perform ledger to blockchain transaction for ledger accounts without blockchain address assigned to them.
This operation needs the private key of the blockchain address. Every time the funds are transferred, the transaction must be signed with the corresponding private key. No one should ever send it's own private keys to the internet because there is a strong possibility of stealing keys and losing funds. In this method, it is possible to enter privateKey or signatureId. PrivateKey should be used only for quick development on testnet versions of blockchain when there is no risk of losing funds. In production, Tatum KMS should be used for the highest security standards, and signatureId should be present in the request. Alternatively, using the Tatum client library for supported languages.
- [Create XRP based Asset](https://docs.tatum.io/reference/xrpassetoffchain.md):
Create an XRP-based asset in a virtual account. The asset must be created and configured on the XRPL blockchain before creating a trust line.
This API call will create an internal virtual currency. You can create virtual accounts with off-chain support.
- [Send XRP from a virtual account to the blockchain](https://docs.tatum.io/reference/xrptransfer.md):
Send XRP from a virtual account to the blockchain. This will create Tatum internal withdrawal request with ID. When every system works as expected, withdrawal request is marked as complete and transaction id is assigned to it.
Activated customer is able to do any operation.
- [Deactivate customer](https://docs.tatum.io/reference/deactivatecustomer.md):Deactivate customer is not able to do any operation. Customer can be deactivated only when all their accounts are already deactivated.
- [Disable customer](https://docs.tatum.io/reference/disablecustomer.md):Disabled customer cannot perform end-user operations, such as create new accounts or send transactions. Available balance on all accounts is set to 0. Account balance will stay untouched.
- [Enable customer](https://docs.tatum.io/reference/enablecustomer.md):Enabled customer can perform all operations. By default all customers are enabled. All previously blocked account balances will be unblocked.
- [List all customers](https://docs.tatum.io/reference/findallcustomers.md):List of all customers. Also inactive an disabled customers are present.
- [Get customer details](https://docs.tatum.io/reference/getcustomerbyexternalorinternalid.md):Using anonymized external ID or internal customer ID you can access customer detail information. Internal ID is needed to call other customer related methods.
- [Update customer](https://docs.tatum.io/reference/updatecustomer.md):This method is helpful in case your primary system will change ID's or customer will change the country he/she is supposed to be in compliance with.
- [List all deposits for product](https://docs.tatum.io/reference/getdeposits.md):Lists all deposits for API key.
- [Count of found entities for get deposits request](https://docs.tatum.io/reference/getdepositscount.md):Counts total entities found by get deposits request.
- [Obtain chart data from historical closed trades](https://docs.tatum.io/reference/chartrequest.md):Obtain data from the closed trades for entering in the chart. Time interval is set between from and to and there is defined time frame. There can be obtained at most 200 time points in the time interval.
- [Cancel all existing trades for account](https://docs.tatum.io/reference/deleteaccounttrades.md):Cancel all trades for account.
- [Cancel existing trade](https://docs.tatum.io/reference/deletetrade.md):Cancel existing trade.
- [List all active buy trades](https://docs.tatum.io/reference/getbuytrades.md):List all active buy trades.
- [List all active buy trades](https://docs.tatum.io/reference/getbuytradesbody.md):List all active buy trades.
- [List all historical trades](https://docs.tatum.io/reference/gethistoricaltrades.md):List all historical trades. It is possible to list all trades, trades for specific trading pair and/or account.
- [List all historical trades](https://docs.tatum.io/reference/gethistoricaltradesbody.md):List all historical trades. It is possible to list all trades, trades for specific trading pair and/or account.
- [List all matched orders from FUTURE_SELL/FUTURE_BUY trades](https://docs.tatum.io/reference/getmatchedtrades.md):List all matched orders from the FUTURE_BUY OR FUTURE_SELL orders.
- [List all active sell trades](https://docs.tatum.io/reference/getselltrades.md):List all active sell trades.
- [List all active sell trades](https://docs.tatum.io/reference/getselltradesbody.md):List all active sell trades.
- [Get existing trade](https://docs.tatum.io/reference/gettradebyid.md):Get existing opened trade.
- [Store buy / sell trade](https://docs.tatum.io/reference/storetrade.md):Store new buy / sell trade. If there is trade already available to fill, fill as much trades as possible.
It is possible to charge fees for the trades. Fees are an extra amount on top of the trade amount and are paid in the currency that you going to block e.g.: - BUY BTC/USDT - fees will be paid in USDT - SELL BTC/ETH - fees will be paid in BTC
If you fill type of the trade with FUTURE_BUY or FUTURE_SELL the trade will behave as a trade future. The trade is concluded now but will be fulfilled in future. The date of fulfillment is by the “Seal Date” field. You can also block a percentage of the amount until the future trade has expired.
Futures can also penalize contracting parties if they don’t have the agreed balance available in their accounts. The penalty is calculated in the following way: Penalty amount = (Percentage of incomplete deal amount because of shortage from user) × (Maximum Penalty percentage of futures deal based on blocked amount and time interval) × (total blocked value).
Example of the BTC/USDT trade future:
The maker creates a sell with the following properties: 1 BTC at a price of 60000 USDT, with a blocking percentage of 22%, a penalty percentage of 45%, a system commision of 1% and with an expiration time of within 12 hours.
{ "type": "FUTURE_SELL", "price": "60000", "amount": "1", "pair": "BTC/USDT", "currency1AccountId": "60a236db1b57f60d62612bf3", "currency2AccountId": "609d0696bf835c241ac2920f", "fee": 1, "feeAccountId": "609d0696bf835c251ac2920a", "attr": { "sealDate": 1621990960631, "percentBlock": 22, "percentPenalty": 45 } } The taker accepts the offer with a buy and blocks 13200 USDT (60000 USDT × 0.22) in their account. { "type": "FUTURE_BUY", "price": "60000", "amount": "1", "pair": "BTC/USDT", "currency1AccountId": "60a236db1b57f60d62612bf2", "currency2AccountId": "609d0696bf835c241ac2920a", "attr": { "sealDate": 1621990960631, "percentBlock": 22, "percentPenalty": 45 } } At the time of the trade, the maker and taker have the following conditions. The maker has 0.65 BTC (35% deficit) in their account and the taker has 49200 USDT (18% deficit) in their account.
The maker penalty is equal to 0.35 × 0.22 × (0.45 × 1 BTC) = 0.03465 BTC. The taker penalty is equal to 0.18 × 0.22 × (0.45 × 60000 USDT) = 1069.2 USDT.
The system commission for the maker is 1 BTC × 1% = 0.01 BTC. The system commission for the taker is 60000 USDT × 1% = 600 USDT.
The maker’s assets after deducting penalties and commissions equals 0.65 - 0.03465 - 0.01 = 0.60535 BTC. The taker’s assets after deducting penalties and commissions equals 49200 - 1069.2 - 600 = 47530.8 USDT.
The amount received by the maker after the trade is (0.60535 × 60000) + 1069.2 = 37390.2 USDT and the taker receives 0.60535 + 0.03465 = 0.64 BTC.
- [Find transactions within the ledger.](https://docs.tatum.io/reference/gettransactions-1.md):Find transactions across whole ledger.
- [Find transactions for account.](https://docs.tatum.io/reference/gettransactionsbyaccountid.md):Finds transactions for the account identified by the given account ID.
- [Find transactions for a customer across all of the customer's accounts.](https://docs.tatum.io/reference/gettransactionsbycustomerid.md):Finds transactions for all accounts of the customer identified by the given internal customer ID.
- [Find transactions with a given reference across all accounts.](https://docs.tatum.io/reference/gettransactionsbyreference.md):Finds transactions for all accounts with the given reference.
- [Send payment](https://docs.tatum.io/reference/sendtransaction.md):Sends a payment within Tatum Private Ledger. All assets are settled instantly.
When a transaction is settled, 2 transaction records are created, 1 for each of the participants. These 2 records are connected via a transaction reference, which is the same for both of them.
This method is only used for transferring assets between accounts within Tatum and will not send any funds to blockchain addresses.
If there is an insufficient balance in the sender account, no transaction is recorded.
It is possible to perform an anonymous transaction where the sender account is not visible for the recipient.
The FIAT currency value of every transaction is calculated automatically. The FIAT value is based on the accountingCurrency of the account connected to the transaction and is available in the marketValue parameter of the transaction.
Sends the N payments within Tatum Private Ledger. All assets are settled instantly.
When a transaction is settled, 2 transaction records are created, 1 for each of the participants. These 2 records are connected via a transaction reference, which is the same for both of them.
This method is only used for transferring assets between accounts within Tatum and will not send any funds to blockchain addresses.
If there is an insufficient balance in the sender account, no transaction is recorded.
It is possible to perform an anonymous transaction where the sender account is not visible for the recipient.
The FIAT currency value of every transaction is calculated automatically. The FIAT value is based on the accountingCurrency of the account connected to the transaction and is available in the marketValue parameter of the transaction.
2 credits per API call
Create new virtual currency with given supply stored in account. This will create Tatum internal virtual currency. Every virtual currency must be prefixed with VC_.
Every virtual currency must be pegged to existing FIAT or supported cryptocurrency. 1 unit of virtual currency has then the same amount as 1 unit of the base currency it is pegged to. It is possible to set a custom base rate for the virtual currency. (baseRate = 2 => 1 VC unit = 2 basePair units)
Tatum virtual currency acts as any other asset within Tatum. To create a fungible token, see the API for deploying a fungible token smart contract.
This operation returns the newly created Tatum Ledger account with an initial balance set to the virtual currency's total supply. Total supply can be changed in the future.
Digital assets:
0x2791bca1f2de4661ed88a30c99a7a9449aa84174 on Polygon mainnet.0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 on Polygon mainnet.1 credit per API call
Get detail of virtual currency.
- [Create new supply of virtual currency](https://docs.tatum.io/reference/mintcurrency.md):2 credits per API call
Create new supply of virtual currency linked on the given accountId. Method increases the total supply of the currency.
This method creates Ledger transaction with operationType MINT with undefined counterAccountId.
- [Destroy supply of virtual currency](https://docs.tatum.io/reference/revokecurrency.md):Destroy supply of virtual currency linked on the given accountId. Method decreases the total supply of the currency.
This method creates Ledger transaction with operationType REVOKE with undefined counterAccountId.
Change base pair and/or base rate of existing virtual currency.
- [Broadcast signed transaction and complete withdrawal](https://docs.tatum.io/reference/broadcastblockchaintransaction.md):Broadcast signed raw transaction end complete withdrawal associated with it. When broadcast succeeded but it is impossible to complete withdrawal, transaction id of transaction is returned and withdrawal must be completed manually.
- [Cancel withdrawal](https://docs.tatum.io/reference/cancelinprogresswithdrawal.md):This method is helpful if you need to cancel the withdrawal if the blockchain transaction fails or is not yet processed. This does not cancel already broadcast blockchain transaction, only Tatum internal withdrawal, and the ledger transaction, that was linked to this withdrawal.
By default, the transaction fee is included in the reverted transaction. There are situations, like sending ERC20 on ETH, TRC token on TRON, XLM or XRP based assets, when the fee should not be reverted, because e.g. the fee is in calculated in Ethereum and transaction was in ERC20 currency. In this situation, only the transaction amount should be reverted, not the fee.
Tip: For Virtual Accounts where withdrawal currency is a token, \n it is recommended to use “revert=false”. Otherwise, the blockchain \n transaction fee in native currency will be reverted as effective \n Virtual Account balance. Example: tx out fails and cancel \n “revert=true” from a 10 USDT + 0.10 TRX as “fee” would be \n reverted as 10+30 USDT (where the TRX of the fee is converted to USDT)- [Complete withdrawal](https://docs.tatum.io/reference/completewithdrawal.md):
Invoke complete withdrawal as soon as blockchain transaction ID is available. All other withdrawals for the same currency will be pending unless the last one is processed and marked as completed.
- [Get withdrawals](https://docs.tatum.io/reference/getwithdrawals.md):Get withdrawals.
- [Store withdrawal](https://docs.tatum.io/reference/storewithdrawal.md):Create a withdrawal from Tatum Ledger account to the blockchain.
When withdrawal from Tatum is executed, all deposits, which are not processed yet are used as an input and change is moved to pool address 0 of wallet for defined account's xpub. If there are no unspent deposits, only last pool address 0 UTXO is used. If balance of wallet is not sufficient, it is impossible to perform withdrawal from this account -> funds were transferred to another linked wallet within system or outside of Tatum visibility.
For the first time of withdrawal from wallet, there must be some deposit made and funds are obtained from that. Since there is no withdrawal, there was no transfer to pool address 0 and thus it is not present in vIn. Pool transfer is identified by missing data.address property in response. When last not cancelled withdrawal is not completed and thus there is no tx id of output transaction given, we cannot perform next withdrawal.
Withdrawal from Tatum can be processed only from 1 account. In Ethereum Blockchain, each address is recognized as an account and only funds from that account can be sent in 1 transaction. Example: Account A has 0.5 ETH, Account B has 0.3 ETH. Account A is linked to Tatum Account 1, Account B is linked to Tatum Account 2. Tatum Account 1 has balance 0.7 Ethereum and Tatum Account 2 has 0.1 ETH. Withdrawal from Tatum Account 1 can be at most 0.5 ETH, even though balance in Tatum Private Ledger is 0.7 ETH. Because of this Ethereum Blockchain limitation, withdrawal request should always contain sourceAddress, from which withdrawal will be made. To get available balances for Ethereum wallet accounts, use hint endpoint.
XRP withdrawal can contain DestinationTag except of address, which is placed in attr parameter of withdrawal request. SourceTag of the blockchain transaction should be withdrawal ID for autocomplete purposes of withdrawals.
XLM withdrawal can contain memo except of address, which is placed in attr parameter of withdrawal request. XLM blockchain does not have possibility to enter source account information. It is possible to create memo in format 'destination|source', which is supported way of memo in Tatum and also there is information about the sender account in the blockchain.
When withdrawal is created, all other withdrawals with the same currency are pending, unless the current one is marked as complete or cancelled.
Tatum ledger transaction is created for every withdrawal request with operation type WITHDRAWAL. The value of the transaction is the withdrawal amount + blockchain fee, which should be paid. In the situation, when there is withdrawal for ERC20, XLM, or XRP based custom assets, the fee is not included in the transaction because it is paid in different assets than the withdrawal itself.
## Changelog - [Sonic Migration: Fantom Opera and Sonic Blaze Replaced by Sonic Mainnet and Testnet](https://docs.tatum.io/changelog/sonic-testnet-now-available-on-tatum.md) - [Polkadot Update: New /v1 REST API Endpoints Available](https://docs.tatum.io/changelog/polkadot-infrastructure-update-new-v1-rest-api-endpoints-available.md) - [X-LAYER (New RPC): Mainnet, Testnet](https://docs.tatum.io/changelog/x-layer-new-rpc-mainnet-testnet.md) - [Tezos Ghostnet Deprecation & Migration to Shadownet](https://docs.tatum.io/changelog/tezos-ghostnet-deprecation-migration-to-shadownet.md) - [Polygon Erigon EOL & Migration to Bor](https://docs.tatum.io/changelog/polygon-erigon-eol-migration-to-bor.md)