This API release is scheduled to go live on Mar 2, 2020 23:59 UTC. Please update and test your integrations against to be ready.

Right before Tezos Mainnet upgrades to Carthage next week we're ready to release a new version of our TzStats Data API v2020-02-24. This is our biggest API update so far with a long list of new features, more data about the Tezos blockchain and a few bug fixes.

Our aim is to make Tezos data easier to access, verify and explore. Let me highlight a few features we're especially proud of. For a complete list see our changelog.

More on-chain events

Not every event happening in Tezos is published as signed operation on chain. Implicit events like block baking, unfreeze, seed slashes, protocol airdrops and invoices are not and although we already track them as flows it was hard to find, list and filter them on accounts. We have now added them as a new kind of operation called implicit operations to all the endpoints you already use to list operations for blocks and accounts.

TzStats now supports a few new implicit operation types alongside regular operations

Entrypoints and Call Statistics

A large part of our API update is meant to help token teams build better tooling. Our API is still the only way to browse the full depth of Tezos contract data in an easy way and we have made it even easier.

We were already decoding entrypoints, call parameters, storage and bigmaps, but what was missing so far was the ability to easily identify contract interfaces and filter by entrypoint. Our new release adds a short interface hash you can use to uniquely identify a contract interface without comparing its entrypoints one-by-one. The hash consists of the first 4 bytes of a SHA256 hash over the binary encoded Michelson script parameters. It's sufficient to detect and search for contracts that follow a particular standard.

In addition we made it possible to filter contract calls by entrypoint (using name, branch or id) and we added per-entrypoint call statistics.

Breaking Changes

This time we decided to include some changes which may break apps in a few rare circumstances instead of deprecating first and then removing features in the next release.

  • block: we replaced fields deposits, fees, rewards with  deposit, fee, reward (singular form) which only contain data related to the block baker instead of block totals
  • flow: we replaced the former field origin with counterparty to hold the opposite party (sender or receiver) to the flow
  • operation: we store counterparties for a few operation types in previously unused fields for that particular type; denunciation losses incured by the offender are now kept in reward, fee, and deposit as negative values, reward for the accuser is stored in volume as positive value

If you use the TzStats API in your project, help us do a better job by sending your feedback and feature requests on Discord.

Before I close, a brief announcement.

Some of you may know that TzStats and its data API have emerged as community project from my prior work on blockchain indexing. This work has subsequently been funded by the Tezos Foundation and I'm extremely grateful for our unique collaboration. To pool resources I have established Blockwatch Data Inc. as a new company for me and my team which gives TzStats a more professional foundation and provides us with the resources to continue our support for Tezos in the future. Blockwatch is a cross-chain technology and data provider which means we will not only work on Tezos-related projects, but Tezos will be a large part of our job. The good thing is that we can talk about Tezos with a broader audience and we can bring the best from other projects back into Tezos. Back to TzStats now.