Start building with Hedera NFT data

Choose the right tool for Hedera NFT development. Learn when to use mirror-node REST data, the JavaScript SDK and SentX marketplace APIs.

Content reviewed on

An NFT application needs to identify assets, read their state and sometimes submit transactions. Those jobs use different tools. Start by deciding which job your application needs to do.

Your questionStart with
Who owns this NFT serial?A Hedera mirror-node query
Which NFTs does an account hold?A paginated account-NFT query
How do I create or transfer a token?The Hedera JavaScript SDK and testnet
What is happening in the SentX marketplace?The SentX public API reference
How do I mint without writing code?DreamForge's first-collection guide

Learn the identifiers first

An account ID identifies an account. A token ID identifies a collection. A serial identifies one NFT inside that collection. They must be used with the correct network.

Do not treat a collection name or image URL as the NFT's identity. Store the network, token ID and serial together in your application.

Read before you write

Start with mirror nodes explained, then look up an NFT. These are read-only tasks that do not require a private key or wallet connection.

Once one lookup works, list an account's NFTs. That introduces pagination, response validation and the limits of a live data view.

Add transactions on testnet

Use the JavaScript SDK introduction to learn the transaction building blocks. Continue with one NFT on testnet before planning any mainnet integration.

Keep signing credentials out of browser bundles, examples and source control. A production wallet connection needs its own consent and security design; a beginner server-side sample is not that design.

Add marketplace context

A mirror node records network information. It does not automatically know the meaning of every marketplace listing or application-specific event.

Use the SentX API for the market data documented there. Keep identifiers consistent when connecting its results to ledger data, and keep a recorded sale distinct from an arbitrary NFT transfer.

Build around uncertain results

Networks and data providers can time out. Keep the original transaction identifier and resolve that operation before creating a replacement. Read the transaction-status guide before implementing retries.

Start small: one network, one known NFT and one question answered correctly.