This changelog is specifically for Gomu APIs. You can find the SDK changelog here.
9th Jan 2023
- We have deprecated support for Polygon. You may use chain: 'Ethereum' into any of our endpoints to view Ethereum data.
20th Oct 2022
- We now support royalty data on the
/rest/overview/contractendpoint. You may view the royalty fee percentages for collections levied on various marketplaces like OpenSea, X2Y2 and Looksrare.
- You may now skip traits when querying the
/rest/overview/contractendpoint. If you would like to receive the contract overview without viewing the NFT traits, input skipTraits = true.
/rest/nfts/by-tokenendpoint has been enhanced to make the queries lighter. Contract information previously available in this endpoint will be accessible in the
21st Sep 2022
- Our order book endpoints now support order book data from multiple marketplaces such as X2Y2, LooksRare, Sudoswap, Gomu, and OpenSea.
- Queries using the
/rest/overview/contractendpoint has been optimised and made more efficient by reducing the response payload.
- We now support rarity ranks for all contracts.
- We have deprecated the token overview post endpoint. You may use the
/rest/nfts/by-contractendpoint to get owners, metadata, last transfer, and order book data.
- With the
/rest/ens/reverse-resolveendpoint, you can now return the primary ENS address for a given wallet or contract address.
31st Aug 2022
- With our new endpoint
/rest/ens/resolve, you can just pass in the ENS name of specific NFT collections or wallets, and the endpoint will automatically resolve it to the correct address.
/rest/ens/reverse-resolveallows you to get the list of ENS addresses associated with a given wallet or contract address.
- Our updated
/rest/nfts/by-tokenendpoints allow for the filtering and sorting of tokens. New functionalities include:
- sortBy function allows you to sort tokens by lowestAsk, HighestAsk, tokenId, in ascending or descending order and rarity in descending rarity
- priceFilter function filters tokens when provided with a price range
- traits filter allows you to filter tokens by specified traits
- We have a new filter function for our
/rest/nfts/by-walletendpoint. Filter by contractAddress allows you to return metadata and transfer related information from both on-chain and off-chain data sources for a wallet or ENS address, filtered by contract address.
📔 Order Book
- We have 3 new order book endpoints that return order book related information. We currently support OpenSea’s order book data.
/rest/orderbook/eventallows you to obtain the recent order book events for a given contract address
/rest/orderbook/floor-priceprovides the floor price of a collection in USD equivalent and details of the lowest ask for the contract
/rest/orderbook/snapshotendpoint receives all orders for all token ids associated with a provided contract address
- Our new endpoint,
/rest/overview/contract-holdersgives you details about contract holders, sorted by count for a given contract address. You can get their wallet address, ENS name and the rarest token held.
/rest/overview/rankingendpoint provides the ecosystem ranking of collections and marketplaces.
/rest/overview/rateendpoint allows you to get the exchange rate of a currency pair.
- To obtain the number of contracts, tokens and transfers indexed by chain, you can use our new endpoint:
- To obtain wallet balances, you may use the
- Our new search endpoint,
/rest/searchreturns contract level information with a given query.
- We have 6 new timeseries endpoints that return contract, transaction and wallet related timeseries data. We support Ethereum contracts at the moment.
/rest/timeseries/floor-priceendpoint provides the floor price of a specific contract over a specified time period
/rest/timeseries/owners-countendpoint returns the average number of holders of a given contract over time
- Receive timeseries data for top owners of a contract by using our
- Get timeseries data for transaction count with our
- To receive transaction volume timeseries data of a contract, you may use our
- Receive timeseries data of a wallet balance by providing a contract address/ENS address and a wallet address to the
- We have 2 new transfers endpoints that return transaction-related data based on your criteria.
- Our new
/rest/transfers/by-marketendpoint provides you with all NFT transfers related to the market you are querying for
/rest/transfers/by-transaction-hashendpoint returns all known NFT transfers related to a transaction hash
- Our new
23rd Jun 2022
- 🟣 Added support for Polygon! Simply put chain: 'polygon' into any of our endpoints to start viewing Polygon data
- 🧩 Added many new transaction classification metrics (including USD value to marketplace classification)
- 🎼 Orderbook data is now available in the API for individual NFT tokens! Sort by
lowestAskto see the sorted orderbook for a collection
2nd Jun 2022
- 💎👑 Now you can get information on how rare your NFTs are! You can now compare rarity across individual tokens within a collection, as well as graph rarity scales of a collection. Rarity scores are calculated both on a per trait basis, inversely proportional to the trait frequency within the entire population; and on an overall basis, which is derived from frequencies of each individual trait, and the frequency of number of traits.
- 🎭 ENS name dealiasing. Now you can just pass in the ENS name of the NFT collections or wallets, and Gomu will automatically resolve it to the correct address.
30th May 2022
- 👀 We have a new endpoint
ContractOverviewwhere we return population-level statistics for each contract:
nftDistributionByTrait, where we return the histogram by each trait type (e.g.
Type > Alienfor Cryptopunks, or
Fur > Solid Goldfor Bored Ape Yacht Club) and
nftDistributionByTraitNum(a histogram of NFTs distributed by trait numbers, relevant for collections like Azuki
- These endpoints will help users build reliably on population level statistics, creating dropdown menus for filtering, showing distributions, and calculating rarity, among other usecases.
- ⛵️💎🧞 Replaced the
marketfield within transactions as a string, to be replaced by a string array
marketsfor every NFT transaction object. This allows us to represent NFT transfers that go through aggregators (e.g. Gemswap + X2Y2) in a single transaction as
['gemswap', 'x2y2']and understand more complex transaction workflows. We are also returning the exchange contracts a particular tokenId has interacted with, in the NFT object under
data > markets. We plan to roll this up to contractAddress level as well. This can help as a heuristic to identify higher value transactions.
- 🤺 Split the
nftsByTokenAPI call. Previously the querying of
nftsByContractwas done using the
nftsByTokenendpoint where the
tokenIdwas an optional parameter - if omitted it returned the full contract call. We understood how it might be confusing at first glance, so we have decided to make the
nftsByContractAPI call explicitly separate.
5th May 2022
- 🔍 Metadata accuracy, especially around dynamic NFTs is very important to us. To that end, we recognize the need to open direct feedback channels, such as the
feedback/stale-nftendpoint. This allows users with valid API keys to return feedback about NFTs with stale metadata for our investigation.
- 🗣 Rolled up meaningful off-chain data fields into the
NFTobject API response (returned from the following endpoints
/rest/nfts/by-wallet); including aggregate contract statistics such as:
- Index statistics: current minted, total amount mintable
- Social media links: Discord, Telegram, Twitter, Instagram
- Market statistics: (including Opensea) commerce data (marketcap, volume, change, sales, average price, floor price) on 1D, 7D, 30D and total timeframes
- Version 1 of the NFT API: Indexed on-chain data on the Ethereum chain. Endpoints for developers to query ownership, transfers of NFTs in the indexed chains, as well as have a birds' eye view of each users NFT portfolio 🦄🌌✨