The Helius Digital Asset Standard (DAS) API provides powerful tools for reading and querying NFT data on Solana.

Getting a Single NFT

Retrieve comprehensive data for a specific NFT using getAsset:

const response = await fetch('https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY', {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getAsset",
    params: {
      id: "F9Lw3ki3hJ7PF9HQXsBzoY8GyE6sPoEZZdXJBsTTD2rk",
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for getAsset

Querying NFTs by Owner

Find all NFTs owned by a specific wallet:

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getAssetsByOwner",
    params: {
      ownerAddress: "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
      page: 1,
      limit: 10,
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for getAssetsByOwner

Searching NFTs

Search for NFTs by various attributes:

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "searchAssets",
    params: {
      ownerAddress: "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
      tokenType: "all",
      limit: 50,
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for searchAssets

Advanced Queries

By Creator

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getAssetsByCreator",
    params: {
      creatorAddress: "9uBX3ASjxWvNBAD1xjbVaKA74mWGZys3RGSF7DdeDD3F",
      page: 1,
      limit: 100,
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for getAssetsByCreator

By Collection

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getAssetsByGroup",
    params: {
      groupKey: "collection",
      groupValue: "J1S9H3QjnRtBbbuD4HjPV6RpRhwuk4zKbxsnCHuTgh9w",
      page: 1,
      limit: 100,
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for getAssetsByGroup

NFT Transaction History

Track the history of an NFT:

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getSignaturesForAsset",
    params: {
      id: "FNt6A9Mfnqbwc1tY7uwAguKQ1JcpBrxmhczDgbdJy5AC",
      page: 1,
      limit: 100,
    },
  }),
});
const data = await response.json();
console.log(data);

API Reference

View detailed documentation for getSignaturesForAsset

Getting On-Chain Proof

Verify NFT authenticity with Merkle proofs:

const response = await fetch("https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: "1",
    method: "getAssetProof",
    params: {
      id: "Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss",
    },
  }),
});
const proof = await response.json();
console.log(proof);

API Reference

View detailed documentation for getAssetProof