Voting Ledger Snapshots
With snapshots of the voting ledger published hourly, anyone can verify that recorded votes remain unchanged across the voting lifecycle
The Catalyst team provides access to routine snapshots of the blockchain state. These snapshots are automatically taken at 1-hour intervals and uploaded to a persistent storage system in the form of an archive. Currently, these archives can be found by querying the Archive API. You can learn more about the available endpoints by inspecting the Swagger documentation.
To show an example of how to interact with the API and download an archive, we will use the curl
and jq
CLI tools. First, we must list the available archives:
In the above response, there are only three archives available. Should the number of results exceed 50, they will automatically be paginated. This is made evident by the next
field being set. To fetch subsequent archives, you would call the same endpoint and append ?next={VALUE}
where VALUE
is the value of the next
field. To iterate over all available archives, you can repeat this process until the next
field is empty.
For this example, we'll choose to fetch the first archive in the list. To get a link for downloading the archive, we can run:
This endpoint returns a time-sensitive URL to download the archive. Note that this URL is only valid for 15 minutes. To download the archive:
We save the file as a .tar.zstd
archive because this is how the contents were archived. If you look back at the API response, you'll see the compression
and packaging
fields were set to zstd
and tar
respectively. We can use these fields to determine the process for extracting the archive. To extract the contents, we'll need to use the tar
and zstd
CLIs:
We now have a complete snapshot of the blockchain state on our local filesytem.
Last updated