Atlas Overview
Atlas is a blockchain search tool designed to standardize and simplify raw blockchain data. It provides a uniform way to query data from various blockchain full nodes using the double-entry accounting format, thereby bridging the underlying intricacies of different blockchain data models. The basis of Atlas is our Universal Blockchain Data Model (UBDM).
Community Availability
Atlas data is available through our community frontend and api with limited access and capabilities. The community data is available via HTTP API only and is limited to 1,000 API requests per 10 minutes per IP address. All of our Atlas specification data is available through our professional API with higher rate limits.
The search window for community users is limited to the last 30 days. Get the Coin Metrics Atlas Pro visualization key to view the entire history.
Atlas Asset Coverage
Coverage for ATLAS v2 can be found on our coverage page:
Accounts
Accounts in the UBDM can be User Accounts, which are addresses that belong to network participants, or Virtual Accounts, which denote things like new asset issuance (inflation) and fees. These Virtual Accounts serve to balance transactions and blocks.
Virtual Accounts
Issuance Account
Protocols like Bitcoin subsidize network security for a period of time by issuing new assets to successful miners in so-called coinbase transactions. Since new units sent to miners create an imbalance in the ledger, the virtual Issuance Account is debited with every new coinbase transaction. There have been instances where, due to miner error, part of the funds that would have been otherwise fully claimed by a miner are inadvertently locked and irredeemable. In such circumstances, the Issuance Account is credited when units are permanently locked in, or burned.
Fees Account
For certain protocols, like Bitcoin, transactions are composed of inputs and outputs. Users pay fees to miners for including their transactions in a block, but that fee is not showcased in the transaction's output list. As a result, there is an imbalance between inputs and outputs (the difference of which being the miner fees), which is only settled when a block containing the transaction is mined. To account for this imbalance, a virtual Fee Account is credited when users pay fees and debited when miners claim these fees by mining a block.
Non-Transactional Debits and Credits
Even though the overwhelming majority of debits and credits take place within a transaction, some protocols have balance updates that occur outside of transactions (for example, Ethereum blocks rewards are credited implicitly, outside of any transaction). There are also unusual circumstances where a block may carry additional credits and debits so that the ledger can be accurately balanced. For example, the irregular ledger update following Ethereum's notorious DAO hack required us to append additional credits and debits to that block in order for the irregular ledger change to be accounted for.
Timestamps: Miner Timestamp vs. Consensus Timestamp
The UBDM accounts for two different types of timestamps: miner-reported and consensus.
Miner Timestamps
The miner timestamp is exactly as it sounds - the timestamp put in the block header by the miner. Most UTXO-based chains do not guarantee that the miner timestamps are accurate or even have to follow the same order as the height. A timestamp for Bitcoin is considered valid if it is greater than the median timestamp of the previous 11 blocks, and less than the network-adjusted time + 2 hours (network-adjusted time is the median of the timestamps returned by all nodes connected to the miner). As a result, block 1 could have a timestamp younger than block 2, which complicates any analysis that requires the correct ordering of transactions.
Consensus Timestamp
To provide accurate ordering, we employ the concept of a Consensus Timestamp, which has the property of providing the same or partial order over blocks as height (i.e., a block's Consensus Timestamp is always greater than or equal to its parent's). This provides a uniform time series that accurately reflects the ordering of transactions.
Chain Sequencing
The global sequence number denotes the ordering of a transaction's updates relative to all other balance updates that have taken place up until that point. For example, the very first credit to the miner of the genesis block (the first block to be confirmed in the ledger) for the chain has a chain_sequence_number of 0. The operations in the transactions immediately after that, be it a credit or a debit, would have the chain_sequence_number of 1. In many ways, this is analogous to the block height (for the block ordering), but we take it a step further with the UBDM and apply the ordering to all operations that have ever taken place.
Transaction Sequencing
The transaction sequence number serves to order and match sets of credits and debits inside a transaction. If in a single transaction, Alice sent Bob 1 token, then Bob sent Charlie 1 token we would have the following order of events.
transaction_sequence_number=0
Alice debited by 1 token, Bob credited by 1 token
transaction_sequence_number=1
Bob debited by 1 token, Charlie credited by 1 token
Beyond ordering, transaction sequence numbers can be used to apply the concepts of sender and receiver because within the same transaction sequence number, senders are the accounts that were debited whereas receivers are the accounts that were credited.
Credits and debits inside a transaction are grouped by transaction sequence number in ascending order and applied to each transaction atomically to reflect the order in which credits and debits occurred in the asset.
Application to UTXO Transactions
UTXO transactions (used in Bitcoin and derivative assets) are comprised of 2 parts:
Inputs (debits) which list the previously unspent outputs spent by this transaction\
Outputs (credits) which list the newly created unspent outputs by this transaction
Since UTXO transactions are applied atomically, all credits and debits have tx_sequence_number of 0.
Taking this transaction that pays a fee of 0.25 BTC as an example, we have:
50 BTC from 1NA7M...
105 BTC to 1P3CK...
50 BTC from 1J27C...
44.75 BTC to 1NA7Mop...
50 BTC from 1DJ8d...
API Endpoints
The Atlas API endpoints are located under the common /blockchain-v2 prefix. There are four primary data sets returned by the Atlas endpoints:
Accounts
/blockchain-v2/{asset}/accountsBlocks
/blockchain-v2/{asset}/blocksTransactions
/blockchain-v2/{asset}/transactionsBalance Updates
/blockchain-v2/{asset}/balance-updates
These endpoints (with no additional query parameters) return the full list of accounts, blocks, transactions, or balance updates for the asset queried with fields listed in each relevant section that follows. The result can also be filtered for specific accounts or transactions, or for specific start/end times, heights, and chain sequence numbers.
So if you want a list of balance updates for a specific set of Bitcoin accounts, you'd use the /blockchain-v2/btc/balance-updates endpoint with the accounts= parameter.
Full Entity Endpoints
There are also two additional endpoints that can be used to get a:
Single full Block with all Transactions
/blockchain-v2/{asset}/blocks/block_hashSingle full Transaction with all Balance Updates
/blockchain-v2/{asset}/transactions/transaction_hash
These endpoints do not support any query parameters and return full block info and full transaction info. The objects returned are the same as those without the full prefix with additional JSON fields.
New Async API Endpoints
If you need to download large amounts of data, i.e. more than 100k rows, we recommend using the "Blockchain Explorer Job API", also known as Async API.
Change Log
Added Stellar Token Support
Added Atlas support for 10 Stellar-based tokens, including major stablecoins and tokenized real-world assets. For full asset coverage details refer to the coverage page.
Tokens Added
BENJI_XLM - Franklin OnChain U.S. Government Money Fund On Stellar
CETES_XLM - CETES Etherfuse on Stellar
CRDYX_XLM - WisdomTree Private Credit and Alternative Income Digital Fund on Stellar
EURC_XLM - EURO Coin on Stellar
PYUSD_XLM - Paypal USD on Stellar
SPXUX_XLM - WisdomTree 500 Digital Fund on Stellar
TESOURO_XLM - TESOURO Etherfuse on Stellar
USDC_XLM - USDC on Stellar
USTRY_XLM - USTRY Etherfuse on Stellar
WTGXX_XLM - WisdomTree Treasury Money Market Digital Fund on Stellar
Added US Treasury Tokens
Added support for US Treasury tokens on ETH + OUSG_XRP
Tokens Added
USTB_ETH - Superstate Short Duration US Government Securities Fund On Ethereum
WTGXX_ETH - WisdomTree Government Money Market Digital Fund On Ethereum
USDY_ETH - Ondo US Dollar Yield on Ethereum
JTRSY_ETH - Janus Henderson Anemoy Treasury Fund On Ethereum
JAAA_ETH - Janus Henderson Anemoy AAA CLO Fund Token On Ethereum
OUSG_ETH - Ondo Short-Term U.S. Government Bond Fund On Ethereum
OUSG_XRP - Ondo Short-Term U.S. Government Bond Fund On XRP Ledger
Added Tokenized Treasury and Money Market Fund Tokens
Added support for four additional tokenized Real World Asset tokens on Ethereum.
Added xStock Tokenized Equities on Ethereum
Added support for ~80 Backed Finance xStock tokenized equities on Ethereum.
xStock tokens added:
AAPLX_ETH - Apple xStock on Ethereum
ABBVX_ETH - AbbVie xStock on Ethereum
ABTX_ETH - Abbott xStock on Ethereum
ACNX_ETH - Accenture xStock on Ethereum
AMBRX_ETH - Ambarella xStock on Ethereum
AMDX_ETH - AMD xStock on Ethereum
AMZNX_ETH - Amazon xStock on Ethereum
APPX_ETH - Appian xStock on Ethereum
AVGOX_ETH - Avago xStock on Ethereum
BACX_ETH - Bank of America xStock on Ethereum
BMNRX_ETH - Bowman xStock on Ethereum
BRK.BX_ETH - Berkshire Hathaway xStock on Ethereum
BTBTX_ETH - Bit Digital xStock on Ethereum
BTGOX_ETH - Bitgold xStock on Ethereum
CMCSAX_ETH - Comcast xStock on Ethereum
COINX_ETH - Coinbase xStock on Ethereum
COPXX_ETH - ConocoPhillips xStock on Ethereum
CRCLX_ETH - Circle xStock on Ethereum
CRMX_ETH - Salesforce xStock on Ethereum
CRWDX_ETH - CrowdStrike xStock on Ethereum
CSCOX_ETH - Cisco xStock on Ethereum
CVXX_ETH - CVS xStock on Ethereum
DFDVX_ETH - DeFi Dev xStock on Ethereum
DHRX_ETH - Danaher xStock on Ethereum
GLDX_ETH - Gold ETF xStock on Ethereum
GMEX_ETH - GM xStock on Ethereum
GOOGLX_ETH - Alphabet xStock on Ethereum
GSX_ETH - Goldman Sachs xStock on Ethereum
HDX_ETH - Home Depot xStock on Ethereum
HONX_ETH - Honeywell xStock on Ethereum
HOODX_ETH - Robinhood xStock on Ethereum
IBMX_ETH - IBM xStock on Ethereum
IEMGX_ETH - iShares Emerging Markets ETF xStock on Ethereum
IJRX_ETH - iShares Small Cap ETF xStock on Ethereum
INTCX_ETH - Intel xStock on Ethereum
IWMX_ETH - iShares Russell 2000 ETF xStock on Ethereum
JNJX_ETH - Johnson & Johnson xStock on Ethereum
JPMX_ETH - JPMorgan xStock on Ethereum
KOX_ETH - Coca-Cola xStock on Ethereum
KRAQX_ETH - Kraken xStock on Ethereum
LINX_ETH - LinkedIn xStock on Ethereum
LLYX_ETH - Lilly xStock on Ethereum
MAX_MASTERCARDXSTOCK_ETH - Mastercard xStock on Ethereum
MCDX_ETH - McDonald's xStock on Ethereum
MDTX_ETH - Medtronic xStock on Ethereum
MRKX_ETH - Merck xStock on Ethereum
MRVLX_ETH - Marvell xStock on Ethereum
MSFTX_ETH - Microsoft xStock on Ethereum
MSTRX_ETH - MicroStrategy xStock on Ethereum
NFLXX_ETH - Netflix xStock on Ethereum
NVDAX_ETH - NVIDIA xStock on Ethereum
NVOX_ETH - Novo Nordisk xStock on Ethereum
OPENX_ETH - OpenAI xStock on Ethereum
ORCLX_ETH - Oracle xStock on Ethereum
PALLX_ETH - Palladium ETF xStock on Ethereum
PEPX_ETH - PepsiCo xStock on Ethereum
PFEX_ETH - Pfizer xStock on Ethereum
PGX_ETH - Procter & Gamble xStock on Ethereum
PLTRX_ETH - Palantir xStock on Ethereum
PMX_ETH - Philip Morris xStock on Ethereum
PPLTX_ETH - PPL xStock on Ethereum
QQQX_ETH - Nasdaq 100 ETF xStock on Ethereum
SCHFX_ETH - Schwab International ETF xStock on Ethereum
SLVX_ETH - Silver ETF xStock on Ethereum
SPYX_ETH - S&P 500 ETF xStock on Ethereum
STRCX_ETH - Strategy xStock on Ethereum
TBLLX_ETH - T-Bill xStock on Ethereum
TMOX_ETH - Thermo Fisher xStock on Ethereum
TONXX_ETH - TON xStock on Ethereum
TQQQX_ETH - 3x Nasdaq ETF xStock on Ethereum
TSLAX_ETH - Tesla xStock on Ethereum
UNHX_ETH - UnitedHealth xStock on Ethereum
VTIX_ETH - Viti xStock on Ethereum
VTX_ETH - Vertex xStock on Ethereum
VX_ETH - Vega xStock on Ethereum
WMTX_WALMARTXSTOCK_ETH - Walmart xStock on Ethereum
XOMX_ETH - ExxonMobil xStock on Ethereum
Last updated
Was this helpful?