Skip to main content

Metaplex Digital Asset Standard API (DAS) for Solana

Updated on
Aug 11, 2026

What Is the Metaplex DAS API?

The Metaplex Digital Asset Standard (DAS) API is a unified read interface for digital assets on Solana. One set of JSON-RPC methods returns indexed, normalized data for standard NFTs, compressed NFTs, fungible tokens, MPL Core assets, and Token 2022 assets. You do not have to query a different program or parse a different account layout for each token standard.

DAS is an open specification maintained by Metaplex that ensures fast and reliable access to asset metadata and state. Because responses share the same shape regardless of which standard an asset uses, a wallet, marketplace, or portfolio tracker can render everything a user owns from a single call.

The API covers four areas:


Why Use DAS Instead of Standard Solana RPC?

Reading assets with standard Solana RPC methods takes a chain of calls: scan program accounts, derive and fetch the metadata account behind each mint, then fetch the offchain JSON that metadata points to. You also have to know the account layout of every standard you support, since each one comes back in a different shape and the results have to be merged by hand.

DAS collapses that work into one request. A single getAssetsByOwner call returns fungible tokens, NFTs, and compressed assets for a wallet as one merged, normalized list, with the offchain metadata already indexed and attached.

Compressed NFTs require DAS. Their data never lands in an account. Only a Merkle root goes onchain and the leaf data sits in an indexer, so standard RPC methods have nothing to read. DAS is how you fetch a compressed NFT's metadata and how you get the proof needed to transfer or burn it.

Supported Asset Types


  • Fungible Tokens: Interchangeable SPL tokens governed by a single mint account that defines total supply and decimal precision, such as stablecoins, liquid staking tokens, and memecoins.
  • Standard NFTs: Assets created with the Metaplex Token Metadata program: a mint with supply locked to 1 by a master edition account, plus a metadata account holding the name, symbol, creators, royalty basis points, and a URI pointing to offchain JSON.
  • Compressed NFTs: NFTs minted with the Metaplex Bubblegum program that have no mint or token account of their own. Their data is hashed into a Merkle tree instead, which makes minting far cheaper and means only an RPC provider with DAS API indexing support can read them back.
  • MPL Core Assets: NFTs built on the Metaplex Core standard, which stores each asset in a single account rather than using the Token program at all. Plugins add behavior such as enforced royalties, freeze delegates, and collection-level operations.
  • Token 2022 Assets: Fungible and non-fungible tokens created with Token 2022, a separate token program whose optional extensions add features like transfer fees, confidential transfers, interest-bearing balances, and metadata stored on the mint.

How to Access the DAS API

Metaplex DAS API for Solana is available for all Quicknode accounts. Enable Metaplex DAS (Digital Asset Standard) API for your Quicknode endpoint to get started.

Once enabled, DAS methods are available on your existing Solana endpoint URL. You call them like any other JSON-RPC method, with no separate hostname or API key.

DAS API Methods

Fetch Specific Assets

Use these methods when you already know the asset ID, for example on an asset detail page or when loading a set of listings.

MethodDescriptionUse It For
getAssetReturns the metadata, ownership, royalty, and compression details of a single compressed or standard assetRendering an asset detail page
getAssetsReturns the same information for a list of asset IDs in one requestLoading a gallery or marketplace listings page

Find Assets by Wallet, Creator, or Collection

Use these methods to list what a wallet holds, what a creator minted, or what belongs to a collection.

MethodDescriptionUse It For
getAssetsByOwnerLists every asset owned by a wallet address, merging fungible tokens, NFTs, and compressed assetsWallet and portfolio views
getAssetsByAuthorityLists assets controlled by a specific update authorityAdmin dashboards for a project you control
getAssetsByCreatorLists assets minted by a given creator address, with an option to require that the creator is verifiedCreator profile pages
getAssetsByGroupLists assets matching a group key and value, most commonly a collection addressCollection browse pages
searchAssetsQueries assets by any combination of owner, creator, authority, collection, interface, burnt status, and moreFiltered search and complex queries

Note: getAssetsByGroup is the direct way to list a single collection. Reach for searchAssets when you need to combine filters, for example every unburnt compressed NFT from a collection that a specific wallet owns.

Verify Compressed NFTs

A compressed NFT has no account of its own, so any program that transfers, burns, or delegates one needs a Merkle proof showing that the asset belongs to its tree. Fetch that proof here and pass it into the instruction.

MethodDescriptionUse It For
getAssetProofReturns the Merkle proof, root, and tree ID for a single compressed assetBuilding a cNFT transfer or burn instruction
getAssetProofsReturns proofs for multiple compressed assets in one requestBatch transfers and airdrop claims

Read Token Accounts, Editions, and History

MethodDescriptionUse It For
getTokenAccountsLists token accounts and balances for a specified mintAddress or ownerAddressBalance checks and holder snapshots
getNftEditionsReturns the printed editions of a specified master edition NFTEdition supply and print tracking
getAssetSignaturesReturns the transaction signatures that touched a compressed asset, including mints, transfers, and burnsProvenance and activity feeds

Pagination and Sorting

The list methods return paginated results, capped by the limit parameter. Pick a pagination strategy based on how your app reads them.

ModeParametersWhen to Use It
By pagepageNumbered pagination where a user can jump to a specific page. The index starts at 1
By cursorcursorInfinite scroll and large result sets, using the cursor returned by the previous response
By rangebefore, afterFetching a bounded slice of results between two known asset IDs

Order results with the sortBy object, which takes a sort field and a direction.

sortBy ValueSorts By
createdThe date the asset was created
updatedThe date the asset was last updated
recentActionThe most recent action taken on the asset
noneNo sorting applied

Resources