Releases: multiversx/mx-api-service
v1.0.3-hf1
v1.0.3
What's Changed
Breaking Changes 🛠
Exciting New Features 🎉
- Show transaction prices by @gabrielmatei in #890
- integrate guest caching by @florincoz in #911
- account auctions endpoint by @CatalinFaurPaul in #892
- Integrate native auth v1 by @tanghel in #970
- Extract all token details from ES instead of performing vm queries on gateway by @tanghel in #957
- add unlock epoch for xmex by @florincoz in #926
- keybase lookup folder multiversx alongside elrond by @CatalinFaurPaul in #931
- account interactions with one address by @AlexandruPislariu in #932
- api status checker by @CatalinFaurPaul in #848
- update graphql service by @CatalinFaurPaul in #866
- Store keybase validations in database by @gabrielmatei in #872
- Auth setting allow native auth tokens by @tanghel in #934
- Hot swappable settings by @gabrielmatei in #874
- add owner attribute for providers by @CatalinFaurPaul in #936
- type safe interactions with gateway by @CatalinFaurPaul in #877
- change xexchange url in configs by @CatalinFaurPaul in #940
- Refresh token & account assets every 10 minutes by @tanghel in #941
- node sync progress percentage by @CatalinFaurPaul in #893
- explorer statistics next steps by @CatalinFaurPaul in #896
- add options to TransactionCreate by @mihaieremia in #901
- Use Lock decorator by @gabrielmatei in #899
- Integrate new indexer mappings by @tanghel in #947
- Add verification endpoint and isVerified attribute for smart contracts by @florincoz in #945
- Add support for multiPairSwap in transaction action by @florincoz in #929
- add nft name instead of collection name in transaction operation by @CatalinFaurPaul in #948
- change default nft rarity algorithm to openRarity by @johnykes in #950
- Stats endpoint real transactions by @tanghel in #953
- add deployTxHash attribute by @CatalinFaurPaul in #915
- Collection extra fields by @tanghel in #949
- include canAddSpecialRoles attribute in token response body by @CatalinFaurPaul in #921
- add provider missing fields from delegation api by @CatalinFaurPaul in #939
- Decorators for extracting performance metrics when performing db interactions by @florincoz in #886
- add supply to any non fungible esdt by @CatalinFaurPaul in #964
- apply supply also to NFTs and SFTs by @CatalinFaurPaul in #966
- Feature flag for exchange service by @tanghel in #971
- Proxify guardian data endpoint by @tanghel in #973
Bugfixes 🐛
- Handle Inactive node status by @tanghel in #918
- Account collection roles endpoint return also where owner by @tanghel in #919
- Token assets TTL fix by @tanghel in #922
- Fix XMEX / LKMEX decoding error by @tanghel in #938
- transaction operations field should select logs results by @CatalinFaurPaul in #905
- fix EGLD price ttl issue by @gabrielmatei in #942
- Fix account NFTs type filter by @tanghel in #944
- fix undefined price redis error by @gabrielmatei in #946
- Invalidate cache on
transferOwnership
event by @gabrielmatei in #912 - add function filter to transfers endpoint by @CatalinFaurPaul in #952
- fix provider extra fields by @CatalinFaurPaul in #962
- Use light gateway for VM queries by @tanghel in #963
- Handle economics attribute filter bug by @tanghel in #969
- nft marketplace auctions endpoint refactoring by @CatalinFaurPaul in #968
Other Notable Changes
- change code of conduct contact address by @CatalinFaurPaul in #925
- add codecov specific version by @CatalinFaurPaul in #895
- Upgrade @multiversx/sdk-nestjs by @AlexandruPislariu in #956
- update simple-git version by @CatalinFaurPaul in #961
Config adjustments
We have started a process of gradually migrating optional values from the config inside the features
element, to be able to keep the feature-related functionality together and to bring more consistency, especially with regard to explicitly activating / deactivating the feature using the enabled
attribute, as well as supporting extra parameters.
Exchange service feature
Implemented in PR #971
A backwards compatible feature that moves the enabling of the flag outside the plugins
section and inside the features
section
old:
plugins:
transaction-action:
mex:
microServiceUrl: 'https://graph.xexchange.com/graphql'
new:
features:
exchange:
enabled: true
serviceUrl: 'https://graph.xexchange.com/graphql'
Auth feature
Implemented in PR #970
A backwards compatible feature that groups the authentication-related functionality together inside the features
section. Added extra support for maxExpirySeconds
and acceptedOrigins
attributes, needed for the native auth implementation
old:
api:
auth: true
security:
admins:
- 'erd1...'
jwtSecret: '12345'
new:
features:
auth:
enabled: false
maxExpirySeconds: 86400
acceptedOrigins:
- 'https://xexchange.com'
admins:
- 'erd1...'
jwtSecret: '12345'
Guest caching feature
Implemented in PR #911
When activated, will proactively cache the results of certain endpoints if the number of api calls exceeds a specified threshold
features:
guestCaching:
enabled: false
hitsThreshold: 100
ttl: 12
Update collection extra details feature
Implemented in PR #949
When activated, will add extra attributes for collections in Elasticsearch, allowing a better sorting capability for collections by assets, holders, no. of nfts
features:
updateCollectionExtraDetails:
enabled: false
Marketplace feature
Implemented in PRs #892 and #968
When activated, the API will expose extra endpoints for extracting auction-related information globall, for a specific address or for a specific collection
features:
marketplace:
enabled: false
serviceUrl: 'https://nfts-graph.multiversx.com/graphql'
Self url
Implemented as part of the guest caching feature but can be used by other components as well. Defines a url that points to the service itself, allowing functionality such as guest caching to perform API calls towards the service itself.
Note: if the API is authenticated, the self requests will fail. This url must point to a non-authenticated api instance
urls:
self: 'https://api.multiversx.com'
Verifier url
Implemented in PR #945
If specified, verification information such as the source code that generated the bytecode behind a smart contract can be returned via API endpoints.
urls:
verifier: 'https://play-api.multiversx.com'
New Contributors
**Fu...
v1.0.2-hf1
What's Changed
Hotfixes 🔥
- rebrand api labels to multiversx by @CatalinFaurPaul in #928
Full Changelog: v1.0.2...v1.0.2-hf1
v1.0.2
What's Changed
Breaking changes
- Get nft supply only if SFT or MetaESDT by @tanghel in #871
- Remove mysql persistence driver by @florincoz in #883
Exciting New Features 🎉
- Version in about endpoint by @tanghel in #720
- Local cache endpoints by @tanghel in #721
- Generate NFT Thumbnail as jpg instead of png by @AlexandruPislariu in #728
- Token economics improvements by @tanghel in #726
- Removed support for accessAddress in jwt global authenticator by @tanghel in #729
- Support for full history nodes by @tanghel in #730
- Upload nft asset to S3 by @AlexandruPislariu in #723
- Add unlock schedule to mex token by @adrianscanteie in #727
- Support for jungle tokens by @tanghel in #733
- Account assets for transaction by @tanghel in #735
- add support for webp image type for NFTs by @AlexandruPislariu in #738
- Block proposer identity information by @tanghel in #739
- Support for experimental jungle pairs by @tanghel in #742
- Label for DNS contracts by @tanghel in #744
- support for light gateway urls by @tanghel in #748
- GraphQL API /account endpoints by @filipbaciiu in #714
- Host GraphQL on the same port as API by @filipbaciiu in #752
- collection accounts endpoint by @CatalinFaurPaul in #751
- Receiver assets in transaction action receiver by @tanghel in #755
- Sort nodes by locked stake by @tanghel in #756
- Proactively refresh nft media & metadata after processing by @tanghel in #758
- Improve node sort predictability by @tanghel in #762
- Flat NFT & collections with nested queries by @filipbaciiu in #754
- Update packages by @AlexandruPislariu in #761
- Websocket multiple addresses initializer by @gabrielmatei in #772
- Transactions endpoint with multiple receivers by @AlexandruPislariu in #766
- withScamInfo support for transactions by @tanghel in #785
- API call cpu usage metrics by @tanghel in #783
- Added complexity implementation by @filipbaciiu in #777
- Performance improvements by @tanghel in #789
- UserToken on github service by @AlexandruPislariu in #792
- Implement generic complexity for REST and GraphQL by @filipbaciiu in #786
- Updated data loader mapping by @filipbaciiu in #796
- implement GraphQL endpoints by @CatalinFaurPaul in #794
- Support any mypinata.cloud url as whitelisted storage by @tanghel in #802
- add Id filter for mex/token enpoint by @CatalinFaurPaul in #810
- Sort locked accounts by balance descending by @adrianscanteie in #806
- Logo resolver for tokens and collections by @AlexandruPislariu in #809
- proxy delegation api endpoints by @CatalinFaurPaul in #816
- Add providers filter by @CatalinFaurPaul in #818
- function filter in account transactions transfers endpoint by @CatalinFaurPaul in #819
- Flag logging by @tanghel in #822
- MultiESDTNFTTransfer marshalized NFT handler by @tanghel in #823
- Customizable ES max window size by @tanghel in #825
- invert type verification for operation by @tanghel in #826
- Add GraphQL implementation by @CatalinFaurPaul in #801
- Updated locked tokens amount to be read dynamically by @tanghel in #830
- transactions searchable by collection/nft by @CatalinFaurPaul in #829
- Searchable nft traits by @tanghel in #835
- transaction filter allow sender receiver to be metachain by @CatalinFaurPaul in #836
- Nft media processing improvements by @tanghel in #841
- filter nfts by nonce before after by @CatalinFaurPaul in #840
- Two way matching between provider and keybase by @tanghel in #843
- Read collection traits from persistence service by @tanghel in #846
- NFT collection custom ranks in assets by @tanghel in #854
- Daily cron to refresh nft metadata & media by @tanghel in #853
- Mark token roles endpoints as deprecated by @tanghel in #856
- add transfers query by @CatalinFaurPaul in #851
- Nft rarities ES mappings by @tanghel in #860
- add senders filter to tranfers by @CatalinFaurPaul in #861
- Label account contracts endpoint by @CatalinFaurPaul in #862
- Add herotag details in transactions by @CatalinFaurPaul in #842
- Add support for multiple senders in account transfers endpoint by @tanghel in #864
- Token can transfer flag by @tanghel in #879
- Plugin process collections by @AlexandruPislariu in #878
- Save metadata errors by @tanghel in #880
- Automatic labelling for metastaking contracts by @gabrielmatei in #873
- Migrate nestjs to v9 by @florincoz in #867
- Scam engine version in about endpoint by @tanghel in #887
- NFT retry metadata fetch if timeout or not found by @tanghel in #884
- Add missing collection properties by @gabrielmatei in #898
- Add batch transactions endpoints by @AlexandruPislariu in #788
- Unified Tokens & MetaESDTs by @tanghel in #897
- Thumbnail resolver for collection by @CatalinFaurPaul in #902
- include token ticker in transaction operations by @CatalinFaurPaul in #903
- Cached dapp config by @tanghel in #908
- Recognize SaveKeyValue function by @tanghel in #916
Bugfixes 🐛
- Environment-specific keybase identities fetch by @AlexandruPislariu in #724
- Fix token properties fetching for non-ESDT events by @tanghel in #731
- Restore transaction logging by @tanghel in #734
- Account nft validation by @CatalinFaurPaul in #736
- Log real ip for transactions by @tanghel in #743
- Fix token roles caching issue by @tanghel in #746
- Nft media needs processing by @AlexandruPislariu in #767
- Transaction send return actual errors by...
v1.0.1
What's Changed
Bugfixes 🐛
- Add 404 status code for collections endpoint by @CatalinFaurPaul in #689
- Transaction processor improved error logging by @tanghel in #692
- fixed node status computations by @tanghel in #693
- Disable default node auction invalidations by @tanghel in #696
- Fix EGLDUSDC price by @tanghel in #697
- mex pairs fix by @tanghel in #703
- Fix rabbitmq logs and events handler by @tanghel in #704
- Filter by function in transaction count by @tanghel in #706
- Collections endpoint fungible token fix by @tanghel in #708
- Fix account nfts 1024 size limitation by @tanghel in #715
Exciting New Features 🎉
- Wildcard collection search by @CatalinFaurPaul in #686
- basic support for transferValueOnly by @tanghel in #687
- Extended transfer endpoints by @tanghel in #688
- Update pull request template by @tanghel in #690
- Account labelling by @tanghel in #685
- Create endpoint for triggering NFT media/metadata reprocessing by @gabrielmatei in #694
- staking v4 support by @tanghel in #695
- NoAuth decorator by @tanghel in #699
- Events notifier dlq by @tanghel in #705
- Dependabot alert by @CatalinFaurPaul in #702
- Implement partial initializers for all entities by @CatalinFaurPaul in #701
- About endpoint by @tanghel in #709
- Add support for nft service managed fields by @tanghel in #707
- Support for unlisted mex pairs by @tanghel in #711
- NFT NSFW mark field by @tanghel in #717
Other Notable Changes
- updated readme by @tanghel in #677
- Swaggerdoc improvements by @tanghel in #678
- update dependencies version by @CatalinFaurPaul in #680
- delegation legacy endpoint caching by @tanghel in #700
- Integrate microservice template npm package by @tanghel in #698
Full Changelog: v1.0.0...v1.0.1