Wednesday, December 21, 2022
API
Protocol
WASM
Tooling

Release: mx-api-service - v1.0.2

Release process improvement

Your input is always greatly appreciated, and we take it seriously when making decisions about the direction of our work. In response to your feedback, we will make the following changes:

  1. We will continue with api.multiversx.com - interfacing the main branch. When a new Release is announced (this post for example), it means that latest and greatest features have been pushed from the development branch to the main branch. It is expected to be stable and we will try to make accurate estimations for release contents. Highly unlikely to happen, but we may deploy hotfixes to this branch without any prior announcement.
  2. Starting with first quarter of 2023 we will expose in parallel next-api.multiversx.com - interfacing the development branch. From this branch we will announce so called Changes (we will be using “Change” prefix instead of “Release”) and keep a changelog for everything that gets pushed to this branch. We will not announce upfront what will be pushed to production on this api. It will be up to the user to choose which api to use for his requests.

These changes are meant to address some of the concerns and needs that were raised by the community, and we believe they will make a positive impact on your experience with MultiversX. We understand that change can be difficult, and we apologize for any inconvenience that may have been caused by the initial implementation.

Easter Egg: one point on our roadmap for 2023 is to add all services and products to the release/changelog announcements page and channels( :-) ).

Breaking changes

  • Get nft supply only if SFT or MetaESDT #871;
  • Because MySQL is not used anymore we removed mysql persistence driver #883;

Exciting features

  • Unified Tokens & MetaESDTs #897

Although structurally similar, an NFT of type MetaESDT has much more similarity to a payable token than an NFT. What is different between a fungible token and a MetaESDT is that every instance can carry specific metadata in the form of attributes. This is how the LKMEX unlock schedule is encoded or how farming reward positions are stored. That’s why in all token-related endpoints we offer the possibility to load both tokens of type FungibleESDT and MetaESDT and in all nft-related endpoints, we offer the possibility to not load tokens of type MetaESDT.

Examples:

- /tokens?includeMetaESDT=true should return both tokens of type FungibleESDT and MetaESDT;

- /tokens?includeMetaESDT=true&type=MetaESDT should return only tokens of type MetaESDT;

See: Github PR #897 for more examples.

  • Add unlock schedule to MEX token #727
  • Support for light gateway #748
  • GraphQL endpoints #794
  • Searchable NFT traits #835

Filtering of NFTs by traits: /nfts?traits=Iris:Large

- /transactions?withUsername=true, /transfers?withUsername=true and all related endpoints should return the herotag as assets wherever an address is present;

- on all transaction & transfer endpoints, if withUsername flag is activated, a maximum number of 50 items should be allowed;

- same logic should reside on the graphql endpoints;

  • Get nft supply only if SFT or MetaESDT #871

- the /nfts/:identifier endpoint should only call the internal GET supply function if type is SFT/MetaESDT;

  • Other notable features
  • Support for JungleDEX tokens #733
  • Label for DNS contracts #744
  • Collection accounts endpoint #751
  • Receiver assets in transaction action receiver #755
  • Sort nodes by locked stake #756
  • Websocket multiple addresses initializer #772
  • Transactions endpoint with multiple receivers #766
  • withScamInfo support for transactions #785
  • Customizable ES max window size #825
  • Transactions searchable by collection/nft #829
  • Bugfixes
  • Environment-specific keybase identities fetch #724
  • Fix token properties fetching for non-ESDT events #731
  • Restore transaction logging #734
  • Account nft validation #736

Full Github Changelog: api.multiversx.com v1.0.2

Feel free to send us a feedback or open a topic in our Github Discussions tab and share your thoughts so that the entire MultiversX community can hear you. We encourage you to continue providing feedback and to let us know if you have any further questions or concerns. Your input is crucial to the success of our project, and we are grateful for your support.

Stay Hungry! Stay Foolish!

Do you need more information?

Explore projects, tokens, and integrations built on MultiversX