ElvWalletFrameClient/Methods

Methods for accessing information from the wallet and performing actions

Source:

Methods

static ClearMarketplaceFilters()

Clear all marketplace filters

Source:

static EditListing(
listingIdoptional,
contractAddressoptional,
tokenIdoptional,
price
)

Requires login

Prompts user for consent

Modify the specify listing. Provide either the listing's ID, or the contract address and token ID of the listed item.

Parameters:
Name Type Attributes Description
listingId string <optional>

The listing ID of the listing to change

contractAddress string <optional>

The address of the NFT contract

tokenId string <optional>

The token ID of the item

price number

Price for the item, in USD. The maximum listing price is $10,000

Source:

static EventMetadata({
tenantSlugoptional,
eventSlugoptional,
eventHashoptional
})
→ Promise.<Object>

Retrieve the full metadata for the specified event object (starting from /public/asset_metadata)

Returns: The full metadata of the event
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of the event's tenant. Required if specifying event slug

eventSlug string <optional>

Specify the URL slug of the event

eventHash string <optional>

Specify a specific version of a the event. Not necessary if eventSlug is specified

Source:

static Item({
contractAddress,
tokenId
})
→ Promise.<Object>

Requires login

Return info about a specific item in the user's wallet

Returns: Information about the requested item. Returns undefined if the item was not found.
Parameters:
Name Type Description
contractAddress string

The address of the NFT contract

tokenId string

The token ID of the item

Source:

static ItemNames({
tenantSlugoptional,
marketplaceSlugoptional
})
→ Promise.<Array.<String>>

Alias of ListingNames.

Retrieve names of all valid items. Full item names are required for filtering listing results by name.

Specify marketplace information to filter the results to only items offered in that marketplace.

Returns: A list of item names
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Specify the URL slug of a marketplace

Source:

static Items({
tenantSlugoptional,
marketplaceSlugoptional,
sortByoptional,
sortDescoptional,
filteroptional,
contractAddressoptional
})
→ Promise.<Array.<Object>>

Requires login

Return info about items in the user's wallet

Note - Certain information (for example additional media and attributes) is not included in item results for efficiency purposes. Use client.Item to retrieve full NFT info

Returns: Information about the items in the user's wallet.
Parameters:
Name Type Attributes Default Description
tenantSlug string <optional>

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Specify the URL slug of the marketplace to filter items by marketplace

sortBy string <optional>
default

Sort order for the results - either default or meta/display_name

sortDesc boolean <optional>
false

Sort in descending order

filter string <optional>

Filter results by item name

contractAddress string <optional>

Filter results by contract address

Source:

static Listing({listingId}) → Promise.<Object>

Return info about a specific item in the user's wallet

Returns: Information about the requested listing. Returns undefined if the item was not found.
Parameters:
Name Type Description
listingId string

The ID of the listing to retrieve

Source:

static ListingAttributes({
tenantSlugoptional,
marketplaceSlugoptional,
displayNameoptional
})
→ Promise.<Array.<String>>

Retrieve names of all valid attributes. Full attribute names and values are required for filtering listing results by attributes.

Specify marketplace information to filter the results to only items offered in that marketplace.

Returns: A list of item attributes
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Specify the URL slug of a marketplace

displayName string <optional>

Display name of the item from which to request edition names

Source:

static ListingEditionNames({displayName}) → Promise.<Array.<String>>

Retrieve all valid edition names of the specified item. Full item edition names are required for filtering listing results by edition.

Returns: A list of item editions
Parameters:
Name Type Description
displayName string

Display name of the item from which to request edition names

Source:

static ListingNames({
tenantSlugoptional,
marketplaceSlugoptional
})
→ Promise.<Array.<String>>

Retrieve names of all valid items. Full item names are required for filtering listing results by name.

Specify marketplace information to filter the results to only items offered in that marketplace.

Returns: A list of item names
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Specify the URL slug of a marketplace

Source:

static ListingPayout({
contractAddress,
tokenId,
listingPrice
})
→ Promise.<Object>

  • Requires login

Retrieve the exact listing payout breakdown for the specified owned NFT at the specified price

Returns: The breakdown of the payout for the listing, including the royalty rate, total royalty fee, and ultimate payout to the user
Parameters:
Name Type Description
contractAddress string

The contract address of the NFT

tokenId string

The token ID of the NFT

listingPrice number

The desired listing price of the NFT

Source:

static ListingPurchase({
listingId,
purchaseProvider
})
→ Promise.<string>

Requires login

Note: Will either prompt user for consent (wallet balance, linked solana wallet) or open the third party payment flow in a new tab (stripe, coinbase)

Initiate purchase flow for the specified listing

Returns: The confirmation ID of the purchase. This ID can be used to check purchase and minting status via the PurchaseStatus method.
Parameters:
Name Type Default Description
listingId string

The ID of the listing to purchase

purchaseProvider string stripe

The payment flow to use for the purchase. Available providers:

  • - stripe - Credit card payment flow with stripe
  • - coinbase - Crypto payment flow with Coinbase
  • - wallet-balance - Purchase with the user's available wallet balance (Requires consent prompt).
  • - linked-wallet - Purchase item with USDC on Solana using the Phantom wallet (Requires popup prompt)

Note: Use the UserBalances method to check the user's available balance.
Source:

static Listings({
startoptional,
limitoptional,
sortByoptional,
sortDescoptional,
filteroptional,
editionFilteroptional,
attributeFilters,
tenantSlugoptional,
marketplaceSlugoptional,
contractAddressoptional,
tokenIdoptional,
lastNDaysoptional
})
→ Promise.<Object>

Return available listings

Returns: Available listings and pagination information
Parameters:
Name Type Attributes Default Description
start number <optional>
0

Index at which to start listing

limit number <optional>
50

Maximum number of results to return

sortBy string <optional>
created

Sort order for the results. Available sort options:

  • - created
  • - info/ordinal
  • - price
  • - nft/display_name
sortDesc boolean <optional>
false

Sort in descending order

filter string <optional>

Filter results by item name.

NOTE: This string must be an exact match on the item name. You can retrieve all available item names from the ListingNames method.

editionFilter string <optional>

Filter results by item edition.

NOTE: This string must be an exact match on the edition name. You can retrieve all available item edition names from the ListingEditionNames method.

attributeFilters Array.<Object>

Filter results by item attributes. Each entry should include name and value (e.g. [{name: "attribute-name", value: "attribute-value"}])

NOTE: These filters must be an exact match on the attribute name and value. You can retrieve all available item attributes from the ListingAttributes method.

tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Filter listings by marketplace

contractAddress string <optional>

Filter results by contract address

tokenId string <optional>

Filter by specific token (along with contract address)

lastNDays number <optional>

Limit results to only include items listed in the past N days

Source:

static ListingStats({
tenantSlugoptional,
marketplaceSlugoptional,
contractAddressoptional,
tokenIdoptional,
lastNDaysoptional
})
→ Promise.<Object>

Return stats about currently active listings

Returns: Stats for currently active listings matching the specified filters. All monetary values are in USD.
  • - count - Total number of listed items
  • - avg - Average listing price
  • - max - Maximum listing price
  • - min - Minimum listing price
  • - volume - Total volume, in USD, of all listings
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Filter stats by marketplace

contractAddress string <optional>

Filter results by contract address

tokenId string <optional>

Filter results by individual token (along with contract address)

lastNDays number <optional>

Limit results to only include items listed in the past N days

Source:

static ListItem(
contractAddress,
tokenId,
price
)
→ Promise.<string>

Requires login

Prompts user for consent

List the specified item for sale. The item must be owned by the current user, and must not have an active hold. (nft.details.TokenHold)

Returns: The listing ID of the item
Parameters:
Name Type Description
contractAddress string

The address of the NFT contract

tokenId string

The token ID of the item

price number

Price for the item, in USD. The maximum listing price is $10,000

Source:

static MarketplaceItem({
tenantSlug,
marketplaceSlug,
sku
})

Retrieve the specified item from the specified marketplace

Parameters:
Name Type Description
tenantSlug string

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string

Specify the URL slug of the marketplace

sku string

The SKU of the item

Source:

static MarketplaceItems({
tenantSlug,
marketplaceSlug,
tagsoptional
})

Retrieve all items from the specified marketplace.

Note that this includes items that may not be for displayed sale in the marketplace. For information specifically about items displayed for sale, see the MarketplaceStorefront method.

Parameters:
Name Type Attributes Description
tenantSlug string

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string

Specify the URL slug of the marketplace

tags Array.<string> <optional>

A list of tags to filter the results. Items not containing at least one specified tag (case insensitive) will be excluded.

Source:

static MarketplaceMetadata({
tenantSlugoptional,
marketplaceSlugoptional
})

Retrieve the full metadata for the specified marketplace object (starting from /public/asset_metadata/info)

Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Specify the URL slug of the marketplace

Source:

static MarketplacePurchase({
tenantSlug,
marketplaceSlug,
purchaseProvideroptional,
sku,
emailoptional,
quantityoptional
})
→ Promise.<string>

Note: Will either prompt user for consent (wallet balance) or open the third party payment flow in a new tab (stripe, coinbase) unless the item is free to claim

Initiate purchase/claim flow for the specified item

Returns: The confirmation ID of the purchase. This ID can be used to check purchase and minting status via the PurchaseStatus method.
Parameters:
Name Type Attributes Default Description
tenantSlug string

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string

Specify the URL slug of the marketplace

purchaseProvider string <optional>
stripe

The payment flow to use for the purchase. Not required if the item can be claimed for free. Available providers:

  • - stripe - Credit card payment flow with stripe
  • - coinbase - Crypto payment flow with Coinbase
  • - wallet-balance - Purchase with the user's available wallet balance (Requires consent prompt).

Note: Use the UserBalances method to check the user's available balance.
sku string

SKU ID of the item to purchase

email string <optional>

The email address of the user. If specified, it will bind the user to the tenant of the specified marketplace

quantity number <optional>
1

Quantity of the item to purchase. It is recommended to check the MarketplaceStock API to ensure enough quantity is available.

Source:

static MarketplaceStock({
tenantSlugoptional,
marketplaceSlugoptional,
marketplaceIdoptional,
marketplaceHashoptional
})
→ Promise.<Object>

Retrieve available item stock for the specified marketplace. Items are keyed by their SKU. If an item's stock is not restricted, no entry will be present. If a user is currently logged in, the entry will contain the number of that item the current user owns.

Returns: Information about available stock in the specified marketplace
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of your tenant. Required if specifying marketplaceSlug

marketplaceSlug string <optional>

Specify the URL slug of your marketplace

marketplaceId string <optional>

The ID of the marketplace

marketplaceHash string <optional>

A version hash of the marketplace

Source:

static MarketplaceStorefront({
tenantSlug,
marketplaceSlug,
tagsoptional
})

Retrieve information about the items displayed for sale in the specified marketplace

Parameters:
Name Type Attributes Description
tenantSlug string

Specify the URL slug of the marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string

Specify the URL slug of the marketplace

tags Array.<string> <optional>

A list of tags to filter the results. Items not containing at least one specified tag (case insensitive) will be excluded. Storefront sections with no matching items will be omitted

Source:

static OpenPack({
contractAddress,
tokenId
})

Prompts user for consent

Initiate opening of the specified pack

Parameters:
Name Type Description
contractAddress string

The address of the NFT contract

tokenId string

The token ID of the item

Source:

static PackOpenStatus({
contractAddress,
tokenId
})
→ Promise.<Object>

Retrieve the status of the specified pack opening.

The returned status has two parts:

  • - status - The status of the open process. When the finished, this status will be COMPLETE. If the process failed, this status will be FAILED.
  • - items - If opening has succeeded, a list of the items received will be included.
Returns: The status of the pack opening
Parameters:
Name Type Description
contractAddress string

The address of the NFT contract

tokenId string

The token ID of the item

Source:

static PurchasePrice({
tenantSlugoptional,
marketplaceSlugoptional,
skuoptional,
listingIdoptional,
quantityoptional
})
→ Promise.<Object>

Retrieve the exact purchase price breakdown of the specified marketplace item or listing. Includes quantity and fee calculations.

Returns: The price of the purchase, including individual item price, subtotal, calculated fees and the total purchase price.
Parameters:
Name Type Attributes Default Description
tenantSlug string <optional>

The URL slug of a tenant. Required if specifying marketplaceSlug

marketplaceSlug string <optional>

The URL slug of a marketplace

sku string <optional>

The SKU of an item from a marketplace

listingId string <optional>

The listing ID of an item

quantity number <optional>
1

For marketplace purchases, the number of items to purchase

Source:

static PurchaseStatus({
confirmationId,
tenantSlugoptional,
marketplaceSlugoptional,
listingIdoptional
})
→ Promise.<Object>

Retrieve the status of the specified purchase.

The returned status has three parts:

  • - purchase - The status of the purchase flow. When the user has completed the process, this status will be COMPLETE. If the user aborts the purchase flow, this status will be CANCELLED.
  • - minting - The status of the nft minting/transfer process. When the minting/transfer has finished, this status will be COMPLETE. If the process failed, this status will be FAILED.
  • - items - If minting has been completed, a list of the items received will be included.
Returns: The status of the purchase
Parameters:
Name Type Attributes Description
confirmationId string

The confirmation ID of the purchase

tenantSlug string <optional>

(If purchasing from a marketplace) The URL slug of a tenant. Required if specifying marketplaceSlug

marketplaceSlug string <optional>

(If purchasing from a marketplace) The URL slug of a marketplace

listingId string <optional>

(If purchasing a listing) The ID of the listing

Source:

static RemoveListing(
listingIdoptional,
contractAddressoptional,
tokenIdoptional
)

Requires login

Prompts user for consent

Modify the specify listing. Provide either the listing's ID, or the contract address and token ID of the listed item.

Parameters:
Name Type Attributes Description
listingId string <optional>

The listing ID of the listing to remove

contractAddress string <optional>

The address of the NFT contract

tokenId string <optional>

The token ID of the item

Source:

static Sales({
startoptional,
limitoptional,
sortByoptional,
sortDescoptional,
tenantSlugoptional,
marketplaceSlugoptional,
contractAddressoptional,
tokenIdoptional,
lastNDaysoptional
})
→ Promise.<Object>

Return records about sales

Returns: List of sales records matching the specified filters. All monetary values are in USD.
Parameters:
Name Type Attributes Default Description
start number <optional>
0

Index at which to start listing

limit number <optional>
50

Maximum number of results to return

sortBy string <optional>
created

Sort order for the results. Available sort options:

  • - created
  • - price
  • - name
sortDesc boolean <optional>
false

Sort in descending order

tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Filter results by marketplace

contractAddress string <optional>

Filter results by contract address

tokenId string <optional>

Filter results by individual token (along with contract address)

lastNDays number <optional>

Limit results to only include items sold in the past N days

Source:

static SalesStats({
tenantSlugoptional,
marketplaceSlugoptional,
contractAddressoptional,
tokenIdoptional,
lastNDaysoptional
})
→ Promise.<Object>

Return stats about listing sales

Returns: Stats for listing sales matching the specified filters. All monetary values are in USD.
  • - count - Total number of sales
  • - avg - Average sale
  • - max - Maximum sale
  • - min - Minimum sale
  • - volume - Total volume, in USD, of all sales
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of a marketplace's tenant. Required if specifying marketplace slug

marketplaceSlug string <optional>

Filter stats by marketplace

contractAddress string <optional>

Filter results by contract address

tokenId string <optional>

Filter results by individual token (along with contract address)

lastNDays number <optional>

Limit results to only include items sold in the past N days

Source:

static SetLanguage(languageCode)

Set the language for the wallet app. This will cause the wallet app to reload if the language is not currently the one specified.

Parameters:
Name Type Description
languageCode string
Source:

static SetMarketplace({
tenantSlugoptional,
marketplaceSlugoptional
})
→ Promise.<string>

Set the marketplace for the wallet.

This will update the font, color scheme, bottom navigation and login customization to the settings of the marketplace specified.

Note that this is not required if the client was initialized with a marketplace.

Returns: The version hash of the specified marketplace
Parameters:
Name Type Attributes Description
tenantSlug string <optional>

Specify the URL slug of your tenant. Required if specifying marketplaceSlug

marketplaceSlug string <optional>

Specify the URL slug of your marketplace

Source:

static SetMarketplaceFilters({filters})

Set filters for the marketplace store view. When active, only items with matching tags will be shown in the marketplace

Parameters:
Name Type Description
filters

The filter(s) to be applied

Source:

static UserBalances() → Promise.<Object>

Requires login

Retrieve the fund balances for the current user

Returns: Returns balances for the user. All values are in USD.
  • - totalWalletBalance - Total balance of the users sales and wallet balance purchases
  • - availableWalletBalance - Balance available for purchasing items
  • - pendingWalletBalance - Balance unavailable for purchasing items
  • - withdrawableWalletBalance - Amount that is available for withdrawal
  • - usedBalance - (Only included if user has set up Solana link with the Phantom wallet) Available USDC balance of the user's Solana wallet
Source:

static UserListings({}) → Promise.<Array.<Object>>

Requires login

Retrieve all listings posted by the current user.

Returns: The current user's listings
Source:

static UserProfile() → Promise.<Object>

Requires login

Return the current user's profile, including email (for custodial users) and blockchain address.

Returns: If a user is currently logged in, the user's profile is returned.
Source:

static UserTransferHistory() → Promise.<Object>

Requires login

Retrieve the transfer history for the current user, including purchases, sales and balance withdrawals. Transactions are sorted by newest first.

Returns: The transfer history of the current user
Source: