Is the hosted Reservoir API free to use?

Currently, the hosted Reservoir API is free to use. Register for an instant API key here.

From where does Reservoir currently aggregate orders?

Currently, Reservoir aggregates sell-side orders (asks) from:

  • OpenSea
  • LooksRare
  • X2Y2
  • Sudoswap
  • Coinbase NFT
  • Rarible
  • Manifold Gallery
  • Foundation
  • Zora
  • Reservoir’s native applications

And buy-side orders from:

  • OpenSea
  • LooksRare
  • X2Y2
  • Sudoswap
  • Rarible
  • CoinbaseNFT

You can find a more detailed breakdown here.

When will you aggregate Blur?

Currently, Blur has a closed API. The moment Blur releases a public API, we will aggregate them immediately.

What listings do you support?

Reservoir supports fixed (Buy Now) and Dutch auctions. We do not support English auctions at this time. Dutch auction prices are updated every 10 minutes.

Do you support lazy minting NFTs?

We do not support lazy minting at this time.

What blockchains do you support?

Reservoir hosted API is currently available on the following chains:

  • Ethereum
  • Goerli (testnet)
  • Polygon (beta)
  • Optimism (beta)

We plan to roll out support for more EVM compatible chains soon.

Do you offer Mumbai (testnet)?

Currently, we only offer Goerli as a testnet. You're welcome to make a Feature Request if you'd like Mumbai support here.

Do you support OpenRarity or provide a rarity score?

We do not currently use OpenRarity ranks for our api. We use PopRank's NFT rankings that you can more about here.

We return both rarity and rarityRank in the tokens API (

rarity is a score based on the frequencies of each trait given to each token within a collection.

rarityRank is a rank given to each each token within a collection based on their rarity. In most cases we recommended using rarityRank.

Note: As rarity is based on trait frequency, collections with few or no traits will not provide accurate rarity or rarityRank data.

How do you handle suspicious tokens flagged by OpenSea?

Our tokens endpoint will return isflagged boolean to help developers easily identify suspicious tokens flagged by OpenSea. You can read more about this feature here.

How do I see collection wide offers?

Use our /orders/bids/v5 and use the collection param with a collection-id. You can see the Bids API here and create a collection-id here.

Why do I not see all bids(offers)?

We filter out single token bids that are 80% below the floor price. This is to reduce spam due to there being large volumes of bids with low chances of being accepted.

We show 100% of collection wide and trait wide bids.

Where do Reservoir native orders get distributed to?

Reservoir orders get distributed to any application that natively ingests orders from the aggregated orderbook. While Reservoir native orders are not automatically pushed to OpenSea, we make it possible (and easy) to publish orders into the OpenSea orderbook using our Router contract or API.

How do marketplace and royalty fees work with Reservoir?

With our easy-to-use APIs apps built on Reservoir have full control over marketplace and royalty fees. You can read more about royalties here.

What's the difference between marketplace and referral fees?

Marketplace fees are built into the order. Referral fees are taken on top when filling the order. (e.g. You could take fees on top when filling an OpenSea order that already has a marketplace fee built-in)

What is a trait-specific bid?

Trait-specific bids are bids that apply to any token that has a particular trait associated with it. A single trait-specific bid can be accepted by any holder of a token with the trait. Once your single trait-specific bid is accepted, is it considered executed, so only one sale is possible with each bid quantity, even if the bid applies to multiple tokens. Further, we allow you to create custom sets of tokens on which to bid, in a similar style to how trait-specific bids work (see the API reference here) as well as create your own custom metadata for collections ( see Metadata Engine).

How do I get a Reservoir API key?

Register for an API key here. If you want to just test out the API first, feel free to query without the key.

What is WETH?

Wrapped Ethereum (WETH) is Ethereum wrapped in the ERC-20 standard. This ERC-20 standard allows you to approve the token to be transferred, which is the fundamental mechanism by which you can place bids and have the WETH transferred out of your wallet at a later date. This is also why you need to approve your WETH for trading.

Why is it necessary to pay gas to cancel orders?

You need to pay to cancel orders because orders are signed atomic units that can be copied. If Reservoir simply deleted your order from the orderbook, there's no way to know whether someone has a signed copy of the order stored elsewhere. When you cancel an order, you are sending a transaction to the on-chain exchange contract tell it to not process your order. Since this step must be done on-chain, you need to pay gas.

How frequently is metadata automatically refreshed?

Token metadata is never automatically refreshed, but may be manually refreshed here.

Collection metadata is updated at 23:30 UTC daily for:

  • Top 500 Collection by 24hr Volume
  • Collections Minted 1 Day Ago
  • Collections Minted 7 Days Ago

Collections can also be manually refreshed here.

Caution: These APIs should be used in moderation, like only when missing data is discovered. Calling it in bulk / programmatically will result in your key getting rate limited.

Do you have any websockets?

We offer a top bids websocket (beta). You can read more about it here.

What RPC provider do you use?

We use QuickNode. But when a user is purchasing, it uses their own RPC.

Where is the Reservoir router contract?

The ethereum contract address for the Reservoir router is: 0x178a86d36d89c7fdebea90b739605da7b131ff6a (etherscan)

Has the Reservoirrouter contract been audited?

Yes the router contract has been audited by Consensys Dilligence. You can find more details here.