Skip to main content

· One min read

In order to vastly improve the response times on a number of endpoints (by up to x10!), we are planning to phase out support for total within our API responses.

A new flag called disable_total exists on the below endpoints which defaults to false. When users set this to true, the total count from the response will return as null, and the endpoint's response time is greatly improved. We strongly recommend to begin using this flag.

Planned Change

From February 1st 2023 the default value of disable_total will be set to true, and unless you specify disable_total=false, the total value will be returned as null.


· One min read

We've just shipped a new EVM feature Get Multiple NFTs, meaning you can now specify a list of NFTs to return in one API call. ⚡

It was already possible to fetch all NFTs by wallet address or by collection address, but now it's possible to fetch specific NFTs across many different collections by specifying a list of collection IDs + token IDs. 🎉

Docs: /web3-data-api/reference/get-multiple-nfts

· One min read

More CUs for our amazing customers!

After considerations on the great demand of the getTokenIdOwners endpoint, we understand that a lot of our users are very keen to make full use of this endpoint.

Therefore, we have decided to reduce our CU cost for /nft/{address}/{token_id}/owners (getTokenIdOwners) from 20 CUs down to 5 CUs.

Try out the endpoint here!

· One min read

There is a new option added to the Stream options. By setting getNativeBalances you can get the native balances of addresses in your webhook! Read more here!

Business plan is required to use this feature!

"webhookUrl": "https:<your_url>.com",
"description": "some dedscription",
"includeNativeTxs": true,
"tag": "someTag",
"chainIds": ["0x1"],
"getNativeBalances": [
"selectors": ["$fromAddress", "$toAddress"],
"type": "tx"


  • selectors: An array of Selectors
  • type: Indicates from where to select one or multiple address fields. Learn more here!


nativeBalances: [
address: "0xd119b250d83893860159f8a7b7a751bc044655a1",
value: "100000"
address: "0x6887246668a3b87f54deb3b94ba47a6f63f32985",
value: "3528061000",

Note that the values are not parsed into decimals. This is an example result inside the webhook

· One min read

nftApprovals in webhooks becomes deprecated. A new list nftTokenApprovals is introduced. The new field will not split between ERC1155 and ERC721 instead it unifies the NFT Approvals.

nftTokenApprovals: [
transactionHash: "0xf0c7542c73e2d26cc0b249da63426643263463463646345",
logIndex: "0",
contract: "0xf573d99385c05c23b24ed33de616ad16a43a0919",
account: "0x6887246668a3b87f54deb3b94ba47a6f63f32985",
operator: "0x34b6a28edbbaf0c7542c73e2d26cc0b249da69a6",
approvedAll: false,
tokenId: '1',
tokenName: 'STREAMSNFT',
tokenSymbol: 'StrNft',
tokenContractType: 'ERC721',
transactionHash: "0x60c7542c73e2d26cc0b249da63426643263463467846235",
logIndex: '0',
contract: '0xd119b250d83893860159f8a7b7a751bc044655a1',
account: '0x6887246668a3b87f54deb3b94ba47a6f63f32985',
operator: '0x34b6a28edbbaf0c7542c73e2d26cc0b249da69a6',
approvedAll: true,
tokenId: null,
tokenName: 'ERC1155_Name',
tokenSymbol: 'ERC1155_SYMBOL',
tokenContractType: 'ERC1155',


contract The Address of the NFT smart contract.

account The Address of the token owner. The Party that allows someone to use their own tokens

operator The Address of the operator. The Party that is allowed (or not) to use all or specific Tokens from account.

approvedAll A boolean that indicates whether all Token were approved or not

tokenId A string that indicates the token id that was approved. If all tokens were approved tokenId is null

· One min read

Arbitrum is now fully-integrated to Moralis EVM API endpoints. You can now index NFT, Token, and other-blockchain related data from the Arbitrum Layer-2 Network by specifying chain parameter value as arbitrum or 0xa4b1.

· One min read

One API - all transactions and logs. ✨ Use our Verbose Transaction Endpoint and save yourself the hassle of multiple API calls. What's more, this Transaction API endpoint extracts data sequenced by block number. Organized - just how you like it.

We have launched a new endpoint /{address}/verbose which for a given wallet address will return all transactions, and for each transaction all its logs.

View API docs

· One min read

Palm Network is now fully-integrated to Moralis EVM API endpoints. You can now index NFT, Token, and other-blockchain related data from the Palm Network by specifying chain parameter value as palm or 0x2a15c308d

· One min read

We just made working with NFT metadata a breeze! 💨 Get predictable, structured outputs at each endpoint thanks to our new built-in NFT API Metadata Normalization.

Taking the original source metadata field, which comes through the API as a string with an unpredictable format, we now output this into a nice clean, predictable object on the below endpoints - meaning it's now much easier for you to work with NFT metadata!

You'll find a new query parameter named normalizeMetadata on the below endpoints. When this is set to true, we normalize and transform the source metadata into a standardized structure (based on ERC721, CryptoPunks, OpenSea etc) and output this in a new object called normalized_metadata


  • Get NFTs by wallet - /{address}/nft
  • Get NFTs by contract - /nft/{address}
  • Get NFT owners by contract - /nft/{address}/owners
  • Get NFT metadata - /nft/{address}/{token_id}
  • Get owners by token ID - /nft/{address}/{token_id}/owners

· One min read

We have just launched Sign in to Moralis with Ethereum! As a user of our web app, you can navigate to Main menu > Account > Scroll down, and from there you are then able to link your Moralis account to Ethereum. Next time you login, you can sign in with Ethereum directly. 🎉

· One min read

Moralis now supports Arbitrum network! 🚀 Seamlessly stream Arbitrum events in real-time to your backend with the Moralis Streams API. ✨

· One min read

We’re thrilled to be launching the first-ever real-time Ronin events stream! ✨

We’re excited to announce Moralis now supports the Ronin Network!

We’re thrilled to share that we’re now launching support for Ronin, the popular gaming sidechain set up by Axie Infinity creators Sky Mavis. Specifically, we’re especially happy to be bringing Roning support to our Streams API.

In fact, this is the first real-time events stream for Ronin Network – making it easier than ever for Ronin developers to work with real-time blockchain data!

Read more here.

· One min read

Stream blockchain data into your backend via webhooks. Ethereum, Polygon, Avalanche, BNB Chain, Fantom, Cronos and all testnets are supported. We’re working on adding more networks every day! 🚀🎉

Moralis’ Streams API is the latest addition to the Moralis API suite (which includes our popular NFT API, EVM API, Solana API and more). With this new API, you can get real-time on-chain events sent directly to your backend via webhooks! What does this mean? It means seamless access to:

  • See every time a specified address receives, sends, swaps, stakes, or burns assets
  • Track when battles or events start in your Web3 game or metaverse
  • Monitor when an address joins your token sale
  • That’s not all! In true Moralis style, the Streams API is fully configurable. Set custom filters to capture the exact on-chain event you need for your project as soon as they fire.

Moreover, each event comes enriched with important data, such as “tokenName”, “tokenSymbol”, “contractType” (for NFTs), “decimals” (for ERC-20 tokens), and more enriched data events will be added soon.

For more information, head over to our: