How to find the wallets behind a fomo handle

Look up any fomo trader by handle and get every wallet linked to them, each marked verified or likely, with the evidence behind the label.

A fomo handle tells you who someone is on the app. It does not tell you what they did on-chain. For that you need their wallet: the address that actually signs their trades. This guide shows how to get it, and how much to trust it.

One call per trader

curl https://provadata.com/v2/users/halvard \
  -H "Authorization: Bearer $API_KEY"

The handle works with or without a leading @ and is not case-sensitive. The response includes two wallet fields:

  • wallets: the best-evidenced Solana wallet and the trader’s EVM address, for code that only wants one of each.
  • walletList: every wallet we have linked to the trader, each with its chain and status.
"walletList": [
  { "chain": "solana", "address": "7xKq…9fQe", "status": "verified" },
  { "chain": "solana", "address": "3mPd…Lw2a", "status": "likely" }
],
"walletsVerified": true,
"checked": true

Verified or likely?

Many active traders run more than one wallet. We mark a wallet verified only when an on-chain transaction moved its balance in step with one of the trader’s swaps. That is proof, not a heuristic. A likely wallet has some evidence linking it to the trader but not that proof.

Which one you use depends on the cost of being wrong. An alert that says “this trader just bought” should fire on verified wallets only. A research view can show likely wallets too, labelled as such. More on how verification works.

When the trader is new to us

If a trader is not in our wallet map yet, the first request returns:

HTTP/1.1 202 Accepted
{ "status": "pending", "handle": "newtrader", "retryAfterSeconds": 15 }

This costs nothing. The check continues in the background; retry after the delay and the answer comes from the map. Two things to know:

  • If many checks are already running you may get 503 busy. That is free too; back off and retry.
  • checked: false on a 200 means we have the profile but have not searched for wallets yet, so an empty walletList means “not looked”, not “none”.

Many traders at once

For up to 100 handles, use the batch endpoint. It answers from the map only and never starts a background check, so it is fast and predictable:

curl "https://provadata.com/v2/users?handles=halvard,northwind,ghost" \
  -H "Authorization: Bearer $API_KEY"
{ "items": [ … ], "missing": ["ghost"] }

You pay 250 credits per trader in items. Handles in missing are free; look them up one by one if you need them.

Going the other way

Have an address and want the trader? See reverse wallet lookup.