Skip to main content

Drops / Airstreams

The Graph

This subgraph tracks events emitted by the @sablier/lockup-periphery contracts, specifically the ones in charge of merkle distributions. It deals with drops-specific actions like the factory creating an airstream campaign, admin clawbacks, or users claiming stream NFTs as defined in the attached Merkle tree.

Drops work in tandem with vesting as merkle distributions will produce new lockup streams. Be sure to check out that part of the docs too.

Endpoints

ChainExplorerStudio1Decentralized Network2
Ethereumsablier-v2-msStudioDe. Network
Arbitrumsablier-v2-ms-arbitrumStudioDe. Network
Arbitrum Sepoliasablier-v2-ms-arbitrum-sepoliaStudioDe. Network
Avalanchesablier-v2-ms-avalancheStudioDe. Network
Basesablier-v2-ms-baseStudioDe. Network
Blastsablier-v2-ms-blastStudioDe. Network
BNB Chainsablier-v2-ms-bscStudioDe. Network
Gnosissablier-v2-ms-gnosisStudioDe. Network
Lightlinksablier-v2-ms-lightlink*N/ALightlink Node*
Optimismsablier-v2-ms-optimismStudioDe. Network
Optimism Sepoliasablier-v2-ms-optimism-sepoliaStudioDe. Network
Polygonsablier-v2-ms-polygonStudioDe. Network
Scrollsablier-v2-ms-scrollStudioDe. Network
Sepoliasablier-v2-ms-sepoliaStudioDe. Network
zkSyncsablier-v2-ms-zksyncStudioDe. Network

Code

Sablier Subgraphs - Merkle - The Graph@sablier-labs/subgraphs - apps/merkle

Envio

This indexers tracks the events emitted by the @sablier/lockup-periphery contracts, specifically the ones in charge of merkle distributions. It deals with drops-specific actions like the factory creating an airstream campaign, admin clawbacks, or users claiming stream NFTs as defined in the attached Merkle tree.

Chains: Individual vs. Aggregated

While subgraphs are chain-tethered (one subgraph endpoint per chain), Envio indexes all chains within the same deployment. The data from all of chains that Sablier is deployed on can be queried from a single endpoint.

Endpoints

ChainEndpoint on the Hosted Network
All-Networks3https://indexer.bigdevenergy.link/[...]/v1/graphql

The endpoint is meant to be plugged into a query client. Use Hasura's online explorer to view the entities and query API.

Code

Sablier Subgraphs - Merkle - Envio@sablier-labs/subgraphs - apps/merkle-envio

Sablier SDK: Merkle API

Sablier's Airstreams rely on a pre-configured merkle tree. This data structure contains the list of recipients as well as their individual claim details. We use the following service to create the merkle tree, as well as proofs for the recipient's claims.

Endpoints

HostEndpoint
Sablierhttps://v2-services.vercel.app

Code

Sablier SDK - Merkle API@sablier-labs/merkle-api

Footnotes

  1. The Graph's Studio endpoints are considered for testing purposes and may be rate-limited

  2. Endpoints could include the following types: (1) The Graph's Decentralized Network (paid) or (2) Custom Nodes (e.g. Lightlink). Because the "Decentralized Network" subgraph flavors (e.g. V1 Ethereum) operate on The Graph Network, you will need to substitute the YOUR_API_KEY placeholder in the Query URL with your own API key. If you require assistance with managing your API keys and configuring indexer preferences, this article serves as an excellent guide

  3. All-Networks means most of the networks supported by Sablier, e.g., Mainnet, Optimism, Polygon, Sepolia. The full list can be found here. To add a new chain to our Envio indexer, create a new list of contracts (/addresses) and import that configuration into our bundles (see /bundles).