A Developer's Introduction to Blockset
Blockset is a backend-as-a-service for blockchain data. It is designed with wallets, blockchain explorers, and data aggregators in mind - and (unlike raw full nodes) is designed to handle unlimited scale. We wrangle the full nodes, pipe the data into a straightforward schema, and make it publicly accessible via the blockset API. You can explore the API using our interactive documentation or our sample code.
Nodes from different blockchains have different APIs for accessing data - even Litecoin, Bitcoin and Bitcoin Cash have grown apart to the point that you can not treat them identically. If you want to support arbitrarily many currencies, you need a way to abstract away the implementation differences between them. Blockset defines the hierarchy of data and the transformations from the native blockchains into its own standardized data format. The basic structure is a top-down structure including:
Blockchains: These represent the blockchains supported by Blockset. Keep in mind that "bitcoin" is really a pair of blockchains, testnet and mainnet - each of which is represented separately. "ethereum" is an even bigger family - including several different testnets.
Blocks: We are talking about block-chains data after all... these are the units that comprise a blockchain. You can retrieve them one by one or a bunch at once.
Transactions: Transactions are the atomic units that users interact with blockchains with - they may include multiple transfers of value which get executed with an all-or-nothing approach.
Transfers: Transfers of value between different addresses. A transaction can be a set of These.
Here's a diagram of the relationships between these resources: