Skip to Content
AssetsIdentifying and Finding Assets

Identifying and Finding Assets

When integrating with our API, you’ll need to map your application’s assets to our unique asset IDs. Since many assets share the same ticker symbol across different networks (like USDC on Ethereum vs Solana), we use unique identifiers in our API responses.

How asset identification works

Our API returns unique id fields for each asset, but because ticker symbols are not unique across networks, the best way to find the specific asset you need is by using network-specific identifiers like contract addresses or mint addresses.

Finding your asset

The easiest way to find the asset you need is by checking its contract address or any other network identification against the asset metadata returned by our API.

Example: Finding Solana USDC

If you want USDC for Solana, here’s how you can identify it:

// You don't need to add filters, but it will help with faster network speeds
// and avoid pagination if your query is the ticker, the results are sorted by market cap.
const assets = await fetch('https://exchange.exodus.io/v3/assets?networks=solana&query=USDC').then(
  (res) => res.json()
);
 
// USDC main address for Solana based on
// https://solscan.io/token/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
const solanaUsdc = assets.find(
  (asset) => asset.meta.mintAddress === 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v'
);

No geolocation restrictions

The GET /v3/assets endpoint is one of the few endpoints that doesn’t have any geolocation restrictions, so you can safely query this from any service and create a mapping between your assets and our asset IDs in a completely asynchronous way.

This makes it ideal for:

  • Pre-caching asset mappings
  • Building lookup tables
  • Validating asset availability before making swap requests
Last updated on