Migration Guide to Uniform API
Overview
We have released a Uniform API to make it even easier for you to access and build with data from Polygon, Ethereum (and other chains we support in the future) through a single, unified API. Moving forward, all new capabilities and performance improvements will be released exclusively on the Uniform API, and we will be fully deprecating the old Ethereum and Polygon endpoints.
We highly encourage you to migrate to the Uniform API at your earliest convenience, and have created this migration guide to assist you as you do so.
In order to select a blockchain within Uniform API you just need to use respective hostname:
After the hostname, all endpoint URLs are the same regardless of the chain. For example, if you want to
get NFT details – use /foundational/v1beta2/nfts/{contractAddress}/{tokenId}/details
for either
Ethereum, Polygon or other upcoming blockchains.
Authorization is performed in the same way as before (via X-API-Key
header), so no changes are
required in this part.
Deprecations
Our existing Ethereum and Polygon API endpoints are marked as deprecated. In order to provide sufficient time for you to migrate, we will keep them running until May 1st 2023.
To further support your migration, we have scheduled temporary shutdowns of the deprecated endpoints on April 3rd and April 10th. These shutdowns will run for 2 hours, between 10 and 12 am PST, and are an opportunity for you to check that all systems are migrated and operate correctly.
If for any reason, you need support migrating, please do not hesitate to reach out to us via Discord or by emailing support@mnemonichq.com.
Endpoint Mapping
To simplify your migration efforts, we have prepared a mapping guide outlining our old and new endpoints.
Aside from endpoint URL changes, there is a set of naming changes:
ethTransfers
and maticTransfers
have been renamed to nativeTransfers
token
names related to NFTs were renamed to nft
for explicity
Please refer to the provided links to the new endpoints documentation for full details on the
input arguments and returned data structure.
Collections
List of current owners by contract
Old Ethereum URL
/collections/v1beta1/current_owners/{contractAddress}
Old Polygon URL
/polygon/collections/v1beta1/current_owners/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/owners_list
Owners count by contract
Old Ethereum URL
/collections/v1beta1/owners_count/{contractAddress}
Old Polygon URL
/polygon/collections/v1beta1/owners_count/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/owners_count/{duration}/{groupByPeriod}
Please note, that required arguments became part of the URL instead of query parameters.
Tokens supply by contract
Old Ethereum URL
/collections/v1beta1/supply/{contractAddress}
Old Polygon URL
/polygon/collections/v1beta1/supply/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/supply/{duration}/{groupByPeriod}
Please note, required arguments are now part of the URL instead of query parameters.
Top collections by avg price
Old Ethereum URL
/collections/v1beta1/top/by_avg_price
Old Polygon URL
/polygon/collections/v1beta1/top/by_avg_price
New Uniform URL
/collections/v1beta2/top/METRIC_AVG_PRICE/{duration}
Please note, required arguments are now part of the URL instead of query parameters.
Top collections by max price
Old Ethereum URL
/collections/v1beta1/top/by_max_price
Old Polygon URL
/polygon/collections/v1beta1/top/by_max_price
New Uniform URL
/collections/v1beta2/top/METRIC_MAX_PRICE/{duration}
Please note, required arguments are now part of the URL instead of query parameters.
Top collections by sales count
Old Ethereum URL
/collections/v1beta1/top/by_sales_count
Old Polygon URL
/polygon/collections/v1beta1/top/by_sales_count
New Uniform URL
/collections/v1beta2/top/METRIC_SALES_QUANTITY/{duration}
Please note, required arguments are now part of the URL instead of query parameters.
Top collections by sales volume
Old Ethereum URL
/collections/v1beta1/top/by_sales_volume
Old Polygon URL
/polygon/collections/v1beta1/top/by_sales_volume
New Uniform URL
/collections/v1beta2/top/METRIC_SALES_VOLUME/{duration}
Please note, required arguments are now part of the URL instead of query parameters.
Traits Summary
Old Ethereum URL
/collections/v1beta1/traits/{contractAddress}/summary
Old Polygon URL
/polygon/collections/v1beta1/traits/{contractAddress}/summary
New Uniform URL
/collections/v1beta2/{contractAddress}/traits
Contracts
All Contracts
Old Ethereum URL
/contracts/v1beta1/all
Old Polygon URL
/polygon/contracts/v1beta1/all
New Uniform URL
/foundational/v1beta2/contracts
Contract Details
Old Ethereum URL
/contracts/v1beta1/by_address/{contractAddress}
Old Polygon URL
/polygon/contracts/v1beta1/by_address/{contractAddress}
New Uniform URL
/foundational/v1beta2/contracts/{contractAddress}/details
NFT Contract Metadata
Old Ethereum URL
/contracts/v1beta1/nft/metadata/{contractAddress}
Old Polygon URL
/polygon/contracts/v1beta1/nft/metadata/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/metadata
ENS
Entity by address
Old Ethereum URL
/ens/v1beta1/entity/by_address/{address}
Old Polygon URL
N/A
New Uniform URL
/wallets/v1beta2/ens/by_address/{address}
Entity by name
Old Ethereum URL
/ens/v1beta1/entity/by_name/{name}
Old Polygon URL
N/A
New Uniform URL
/wallets/v1beta2/ens/by_name/{name}
Historical Entities by Address
Old Ethereum URL
/ens/v1beta1/historical/entity/by_address/{address}
Old Polygon URL
N/A
New Uniform URL
/wallets/v1beta2/ens/by_address/{address}/history
Historical Entities by name
Old Ethereum URL
/ens/v1beta1/historical/entity/by_name/{name}
Old Polygon URL
N/A
New Uniform URL
/wallets/v1beta2/ens/by_name/{name}/history
Marketplaces
Collection/NFT Floor
Old Ethereum URL
/ethereum/marketplaces/v1beta1/floors/{contractAddress}
Old Polygon URL
/polygon/marketplaces/v1beta1/floors/{contractAddress}
New Uniform URL
/marketplaces/v1beta2/floors/{contractAddress}
NFT listings
Old Ethereum URL
/ethereum/marketplaces/v1beta1/listings/active
Old Polygon URL
/polygon/marketplaces/v1beta1/listings/active
New Uniform URL
/marketplaces/v1beta2/listings/active
NFT offers
Old Ethereum URL
/ethereum/marketplaces/v1beta1/offers/active
Old Polygon URL
/polygon/marketplaces/v1beta1/offers/active
New Uniform URL
/marketplaces/v1beta2/offers/active
Pricing
Prices by contract
Old Ethereum URL
/pricing/v1beta1/prices/by_contract/{contractAddress}
Old Polygon URL
/polygon/pricing/v1beta1/prices/by_contract/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/prices/{duration}/{groupByPeriod}
Please note, required arguments are now part of the URL instead of query parameters.
Sales volume by contract
Old Ethereum URL
/pricing/v1beta1/volumes/by_contract/{contractAddress}
Old Polygon URL
/polygon/pricing/v1beta1/volumes/by_contract/{contractAddress}
New Uniform URL
/collections/v1beta2/{contractAddress}/sales_volume/{duration}/{groupByPeriod}
Please note, required arguments are now part of the URL instead of query parameters.
Tokens
NFTs by the Contract
Old Ethereum URL
/tokens/v1beta1/by_contract/{contractAddress}
Old Polygon URL
/polygon/tokens/v1beta1/by_contract/{contractAddress}
New Uniform URL
/foundational/v1beta2/nfts/by_contract/{contractAddress}
NFTs by the Minter
Old Ethereum URL
/tokens/v1beta1/by_minter/{minterAddress}
Old Polygon URL
/polygon/tokens/v1beta1/by_minter/{minterAddress}
New Uniform URL
/foundational/v1beta2/nfts/by_minter/{minterAddress}
NFTs by the Owner
Old Ethereum URL
/tokens/v1beta1/by_owner/{ownerAddress}
Old Polygon URL
/polygon/tokens/v1beta1/by_owner/{ownerAddress}
New Uniform URL
/foundational/v1beta2/nfts/by_owner/{ownerAddress}
Token Metadata (structured)
Old Ethereum URL
/tokens/v1beta1/token/{contractAddress}/{tokenId}/metadata
Old Polygon URL
/polygon/tokens/v1beta1/token/{contractAddress}/{tokenId}/metadata
New Uniform URL
/foundational/v1beta2/nfts/{contractAddress}/{tokenId}/details
Token Metadata (raw)
Old Ethereum URL
/tokens/v1beta1/token/{contractAddress}/{tokenId}/metadata
Old Polygon URL
/polygon/tokens/v1beta1/token/{contractAddress}/{tokenId}/metadata
New Uniform URL
/foundational/v1beta2/nfts/{contractAddress}/{tokenId}/raw_metadata
NFT Owners
Old Ethereum URL
/tokens/v1beta1/token/{contractAddress}/{tokenId}/owners
Old Polygon URL
/polygon/tokens/v1beta1/token/{contractAddress}/{tokenId}/owners
New Uniform URL
/foundational/v1beta2/nfts/{contractAddress}/{tokenId}/owners
Token Traits
Old Ethereum URL
/tokens/v1beta1/token/{contractAddress}/{tokenId}/traits
Old Polygon URL
/polygon/tokens/v1beta1/token/{contractAddress}/{tokenId}/traits
New Uniform URL
/foundational/v1beta2/nfts/{contractAddress}/{tokenId}/traits/all
Transfers Insights
Transfers by Tx Hash
Old Ethereum URL
/transfers/v1beta1/all/by_tx_hash/{txHash}
Old Polygon URL
/polygon/transfers/v1beta1/all/by_tx_hash/{txHash}
New Uniform URL
/foundational/v1beta2/transfers/all/by_tx_hash/{txHash}
NFT Transfers
Old Ethereum URL
/transfers/v1beta1/nft
Old Polygon URL
/polygon/transfers/v1beta1/nft
New Uniform URL
/foundational/v1beta2/transfers/nft
Blockchain
The Blockchain Service has been completely deprecated.
Wallet Intelligence
Collections by Wallet
Old Ethereum URL
/wallets/v1beta1/{walletAddress}/collections
Old Polygon URL
/polygon/wallets/v1beta1/{walletAddress}/collections
New Uniform URL
/wallets/v1beta2/{walletAddress}/collections
NFT Transfers
Old Ethereum URL
/wallets/v1beta1/{walletAddress}/nft_transfers
Old Polygon URL
N/A
New Uniform URL
/wallets/v1beta2/{walletAddress}/nft_transfers
NFTs by Wallet
Old Ethereum URL
/wallets/v1beta1/{walletAddress}/nfts
Old Polygon URL
/polygon/wallets/v1beta1/{walletAddress}/nfts
New Uniform URL
/wallets/v1beta2/{walletAddress}/nfts
Report Not Spam
Old Ethereum URL
/wallets/v1beta1/{walletAddress}/report_not_spam/{contractAddress}
Old Polygon URL
/polygon/wallets/v1beta1/{walletAddress}/report_not_spam/{contractAddress}
New Uniform URL
/wallets/v1beta2/{walletAddress}/report_not_spam/{contractAddress}
Report Spam
Old Ethereum URL
/wallets/v1beta1/{walletAddress}/report_spam/{contractAddress}
Old Polygon URL
/polygon/wallets/v1beta1/{walletAddress}/report_spam/{contractAddress}
New Uniform URL
/wallets/v1beta2/{walletAddress}/report_spam/{contractAddress}