Skip to main content

Don't have an API key yet?

Sign-up to Moralis to get your free API key and start building today.

Get Your Free API Key
Version: 2.0

How to get SPL NFT balance of an address


Before getting started, make sure you have the following ready:

  • Node v.14+ or Python
  • NPM/Yarn or Pip

Step 1: Setup Moralis​

First register your Moralis account and get your Moralis API Key.

Once you have your Moralis API Key, install the Moralis SDK in your project.

npm install moralis @moralisweb3/common-sol-utils

Step 2: Get SPL NFT balance of an address​

In order to get the SPL NFT balance of a wallet address, Moralis provides you the getNFTs API endpoint to do so.

Here you'll need two parameters: address and network.

Once you have obtained both the address and network, you can copy the following code:

const Moralis = require("moralis").default;
const { SolNetwork } = require("@moralisweb3/common-sol-utils");

const runApp = async () => {
await Moralis.start({
apiKey: "YOUR_API_KEY",
// ...and any other configuration

const address = "BWeBmN8zYDXgx2tnGj72cA533GZEWAVeqR9Eu29txaen";

const network = SolNetwork.MAINNET;

const response = await Moralis.SolApi.account.getNFTs({



Step 3: Run the script​

To run the script, enter the following command:

node index.js

In your terminal, you should see the following JSON response:

"associatedTokenAddress": "AUmHKB9srYgzHW2E5NuEWyG9wp5g4Cbewxurr1geV1iR",
"mint": "53kauHy6PJx9iykDV9BxpCBbXe2yPwA5tRcKcNDmfCxn"

Congratulations πŸ₯³ You just got the SPL NFT balance of a wallet address with just a few lines of code using the Moralis Solana API!

API Reference​

If you want to know more details on the endpoint and optional parameters, check out:

YouTube Tutorial​


If you face any trouble following the tutorial, feel free to reach out to our community engineers in our Discord or Forum to get 24/7 developer support.