This function retrieves information about the currently logged in user. The fields returned include the userIdentifier, the user's wallet addresses, and the asset and collectibles balances.
This function should only be invoked once the user has successfully logged in.
This function returns a Promise that resolves to the following object:
{"statusCode":1/0,"data": {"userIdentifier":"userIdentifier",// the userIdentifier returned from your JWT verification endpoint"chainWallets": ["eth": ["address"// list of addresses for each chain ], ... ],// list of wallet addresses for each chain"assets": ["eth_eth": { // assetKey"totalBalance":"totalBalance",// total balance in BigNumber, across all user accounts"accountBalances": [ {"address":"address",// wallet address"balance":"balance"// balance in BigNumber }, ] }, ... ],// list of assets owned by user"collectibles": [ {/****** Metafi Asset fields *******/"symbol":"","chain": {/* Metafi chain Object */ },"decimals":0,"isNative":false,"contractAddress":"contractAddress","assetKey":"","className":"Asset","tokenStandard": {"name":"erc1155" },/****** NFT specific fields *******/"name":"name",// name extracted from NFT metadata"image":"imageURL",// image URL extracted from NFT metadata"description":"description",// description extracted from NFT metadata"tokenUri":"tokenUri",// fetched from smart contract"metadata": { // raw NFT metadata extracted from token URI"name":"name","description":"description","image":"imageURL", },"tokenId":"tokenId"// fetched from smart contract }, ... ], }"error": "error"// error if any}
Example
custom-tokens.js
import { RetrieveUser } from'@metafi/metafi-js-package';functionApp() {// Login logicconsthandleRetrieveUser=async () => {var result =awaitRetrieveUser("YOUR-API-KEY");console.log("result after retrieving user", result); }return ( <div> <buttononClick={handleRetrieveUser}>Retrieve User Details</button> </div> );}exportdefault App;