A Rust-based API for generating and verifying Merkle trees used in Sablier.
Important
This is a private internal service operated by Sablier Labs. It powers the official Sablier client interfaces and is not intended to be self-hosted or run by third parties. The source is published under GPL v3 for transparency and auditability only.
If you are a third-party integrator and need programmatic access, consume the hosted API documented at docs.sablier.com. If you require a self-managed deployment, fork the repository and operate it under your own infrastructure — Sablier Labs does not provide support for external deployments.
Sablier Airdrops rely on pre-configured Merkle trees. This data structure contains the list of recipients as well as their individual claim details. Utilities are required to create, manage and validate such Merkle trees.
To make these functionalities available to the Sablier client interfaces we built merkle-api, a Rust backend service
that exposes a REST API for creating, storing and reading Airstream-related Merkle trees.
The API provides endpoints for actions such as creating a campaign, checking eligibility for a given address, and verifying proofs. See the endpoints docs for the full reference.
An example of the Rust CSV generator is available here:
https://gist.github.com/gavriliumircea/2a9797f207a2a2f3832ddaa376337e8c
The formatting rules for input CSVs are documented here.
Feel free to dive in! Open an issue, start a discussion or submit a PR.
You will need the following software on your machine:
Sablier Merkle API is licensed under GPL v3 or later.
