Migrating NFT data from SimpleHash to Alchemy
Author: Ram Bhaskar
SimpleHash is sunsetting its services on March 27, 2025, and this guide provides a straightforward path for you to migrate NFT Data to Alchemy.
Please reach out to data-services-product@alchemy.com with any questions!
We offer a seamless transition from SimpleHash with robust, reliable, and scalable NFT APIs.
Our NFT API provides:
- Multi-chain support (30+ chains supported)
- Ownership & transfer history
- Real-time metadata updates
- Support for special case NFTs (e.g., CryptoPunks and other non-standard ERC-721/1155 implementations)
- White-glove support for migration assistance
If you've been using SimpleHash for NFT metadata, collection data, and ownership tracking, migrating to Alchemy is straightforward.
Learn more about NFT API
Steps to migrate:
- Sign up for an Alchemy account and generate an API key.
- Replace SimpleHash endpoints with Alchemy’s NFT API endpoints.
- Update your request formats (Alchemy’s documentation provides clear examples).
- Test and validate data consistency
- Reach out to us at data-services-product@alchemy.com for any feature requests or additional migration assistance.
Example: fetching NFTs owned by a wallet
📌 Example Wallet: 0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7
SimpleHash endpoint (deprecated)
curl -X GET "<https://api.simplehash.com/nfts/owners?wallet=0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7>"Alchemy equivalent
Try it out here!
curl -X GET "<https://eth-mainnet.alchemyapi.io/v2/YOUR_API_KEY/getNFTs?owner=0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7>"Alchemy API response:
{
"ownedNfts": [
{
"contract": {
"address": "0x49D38C87a8D5c8c67C6d84321752D9af0BCB428c",
"name": "aaveprotocol.net",
"symbol": "Airdrop",
"totalSupply": "19990",
"tokenType": "ERC1155",
"contractDeployer": "0x1524F7e162ae5136343727b36021E14AcCAd83f2",
"deployedBlockNumber": 19101952,
"openSeaMetadata": {
"floorPrice": 0,
"collectionName": "Visit aaveprotocol.net to claim rewards",
"collectionSlug": "visit-aaveprotocol-net-to-claim-rewards-1",
"safelistRequestStatus": "not_requested",
"imageUrl": "<https://i.seadn.io/s/raw/files/6c70895d3df6e4ab50546db12eccc74d.png?w=500&auto=format>",
"description": "Visit aaveprotocol.net to claim rewards",
"externalUrl": null,
"twitterUsername": null,
"discordUrl": null,
"bannerImageUrl": null,
"lastIngestedAt": "2025-02-18T04:02:33.000Z"
},
"isSpam": null,
"spamClassifications": []
},
"tokenId": "0",
"tokenType": "ERC1155",
"name": "Visit aaveprotocol.net to claim rewards",
"description": "Visit aaveprotocol.net to claim rewards",
"tokenUri": "<https://ipfs.io/ipfs/QmSqGiLcFK3uxTjwRxMSzqbiNFRCaNiL1ps61gJtaxqB4r/0000000000000000000000000000000000000000000000000000000000000000.json>",
"image": {
"cachedUrl": "<https://nft-cdn.alchemy.com/eth-mainnet/bda833c8977f198e0a76185a7c195388>",
"thumbnailUrl": "<https://res.cloudinary.com/alchemyapi/image/upload/thumbnailv2/eth-mainnet/bda833c8977f198e0a76185a7c195388>",
"pngUrl": "<https://res.cloudinary.com/alchemyapi/image/upload/convert-png/eth-mainnet/bda833c8977f198e0a76185a7c195388>",
"contentType": "image/png",
"size": 171504,
"originalUrl": "<https://ipfs.io/ipfs/QmWwUwWQQXd3QfZb3ThoGGckTYrUEW2JkPENethzHLVNqw>"
},
"raw": {
"tokenUri": "<https://ipfs.io/ipfs/QmSqGiLcFK3uxTjwRxMSzqbiNFRCaNiL1ps61gJtaxqB4r/{id}.json>",
"metadata": {
"name": "Visit aaveprotocol.net to claim rewards",
"description": "Visit aaveprotocol.net to claim rewards",
"image": "<https://ipfs.io/ipfs/QmWwUwWQQXd3QfZb3ThoGGckTYrUEW2JkPENethzHLVNqw>"
},
"error": null
},
"collection": {
"name": "Visit aaveprotocol.net to claim rewards",
"slug": "visit-aaveprotocol-net-to-claim-rewards-1",
"externalUrl": null,
"bannerImageUrl": null
},
"mint": {
"mintAddress": null,
"blockNumber": null,
"timestamp": null,
"transactionHash": null
},
"owners": null,
"timeLastUpdated": "2025-02-26T11:26:38.942Z",
"balance": "1",
"acquiredAt": {
"blockTimestamp": null,
"blockNumber": null
}
},...
]
}Note: Alchemy supports special-case NFTs like CryptoPunks, which do not adhere to ERC-721 metadata standards. Our API is optimized for performance and reliability, making it the ideal long-term solution for your NFT data needs.
More Alchemy NFT features
In addition to fetching NFTs owned by a wallet, we provide:
- NFT contract ownership – Contract level NFT data
- NFT Sales/Floor Prices – Sales data/price data
- Token Gating & Utility Tracking – enhance user experiences with token-gated content
- NFT Webhooks — Webhooks to track NFT transfers and metadata updates
Start your migration to Alchemy
We understand migrating services can be complex, but we are here to make it easy with dedicated support, feature parity, and expanded capabilities.
Learn more about NFT API
Frequently asked questions
Why is migration from SimpleHash necessary?
SimpleHash is sunsetting its services on March 27, 2025, requiring users to migrate their NFT data to an alternative provider.
What NFT data features do we provide?
Our NFT API offers multi-chain support across 30+ chains, ownership and transfer history, real-time metadata updates, support for special case NFTs like CryptoPunks, and white-glove migration assistance.
How do I start migrating to our NFT API?
Sign up for an Alchemy account, generate an API key, replace SimpleHash endpoints with our NFT API endpoints, update your request formats using our documentation, and test data consistency.
Do you support non-standard NFTs like CryptoPunks?
Yes, our API is optimized to support special-case NFTs like CryptoPunks that do not adhere to standard ERC-721 metadata implementations.
What is the endpoint for fetching NFTs owned by a wallet?
Use the getNFTs endpoint: https://eth-mainnet.alchemyapi.io/v2/YOUR_API_KEY/getNFTs?owner=WALLET_ADDRESS to retrieve NFTs owned by a specific wallet address.
What additional NFT features do we offer beyond basic ownership data?
We provide NFT contract ownership data, sales and floor price data, token gating and utility tracking, and NFT webhooks for tracking transfers and metadata updates.
Where can I get help with my migration?
Contact our team at data-services-product@alchemy.com for feature requests, questions, or additional migration assistance.
Alchemy Newsletter
Be the first to know about releases
Sign up for our newsletter
Get the latest product updates and resources from Alchemy
By entering your email address, you agree to receive our marketing communications and product updates. You acknowledge that Alchemy processes the information we receive in accordance with our Privacy Notice. You can unsubscribe anytime.
Related articles

Solana Agent Kit vs GOAT vs ElizaOS: which framework should you use?
Solana Agent Kit vs GOAT vs ElizaOS compared: Solana-native depth, multi-chain breadth, or full agent runtime. Code examples and a decision framework.

How to build onchain agents: wallets, payments, and real-time data
How to build onchain agents: a chain-agnostic guide to giving AI agents secure wallets, x402-based autonomous payments, and real-time blockchain data with Alchemy.

How to build on UTXO chains: Bitcoin, Litecoin, Dogecoin, and Bitcoin Cash
UTXO chains for developers: how Bitcoin, Litecoin, Dogecoin, and Bitcoin Cash differ from EVM, what infrastructure you need, and how Alchemy delivers it.