Skip to content

sablier-labs/merkle-api

Repository files navigation

Sablier Banner

Sablier MerkleAPI Github Actions License: LGPL v3 Sablier

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.

About

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.

API

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.

CSV

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.

Contributing

Feel free to dive in! Open an issue, start a discussion or submit a PR.

Pre Requisites

You will need the following software on your machine:

License

Sablier Merkle API is licensed under GPL v3 or later.

Contributors