Search wallets by entity name, type, or label
curl --request GET \
--url https://demo-api.mobula.io/api/2/wallet/labels/searchimport requests
url = "https://demo-api.mobula.io/api/2/wallet/labels/search"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://demo-api.mobula.io/api/2/wallet/labels/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://demo-api.mobula.io/api/2/wallet/labels/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://demo-api.mobula.io/api/2/wallet/labels/search"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://demo-api.mobula.io/api/2/wallet/labels/search")
.asString();require 'uri'
require 'net/http'
url = URI("https://demo-api.mobula.io/api/2/wallet/labels/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"walletAddress": "<string>",
"labels": [
"<string>"
],
"walletMetadata": {
"entityName": "<string>",
"entityLogo": "<string>",
"entityLabels": [
"<string>"
],
"entityType": "<string>",
"entityDescription": "<string>",
"entityTwitter": "<string>",
"entityWebsite": "<string>",
"entityGithub": "<string>",
"entityDiscord": "<string>",
"entityTelegram": "<string>"
},
"platform": {
"id": "<string>",
"name": "<string>",
"logo": "<string>"
},
"fundingInfo": {
"from": "<string>",
"date": "<string>",
"chainId": "<string>",
"txHash": "<string>",
"formattedAmount": 123,
"currency": {
"name": "<string>",
"symbol": "<string>",
"logo": "<string>",
"decimals": 123,
"address": "<string>"
},
"fromWalletTag": "<string>",
"fromWalletLogo": "<string>",
"fromWalletMetadata": {
"entityName": "<string>",
"entityLogo": "<string>",
"entityLabels": [
"<string>"
],
"entityType": "<string>",
"entityDescription": "<string>",
"entityTwitter": "<string>",
"entityWebsite": "<string>",
"entityGithub": "<string>",
"entityDiscord": "<string>",
"entityTelegram": "<string>",
"extra": {}
}
}
}
],
"pagination": {
"total": 123,
"offset": 123,
"limit": 123
}
}Wallet APIs
Search Wallet Labels
Reverse lookup - find wallets by entity name, entity type, or label. Paginated results with full wallet metadata.
GET
/
2
/
wallet
/
labels
/
search
Search wallets by entity name, type, or label
curl --request GET \
--url https://demo-api.mobula.io/api/2/wallet/labels/searchimport requests
url = "https://demo-api.mobula.io/api/2/wallet/labels/search"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://demo-api.mobula.io/api/2/wallet/labels/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://demo-api.mobula.io/api/2/wallet/labels/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://demo-api.mobula.io/api/2/wallet/labels/search"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://demo-api.mobula.io/api/2/wallet/labels/search")
.asString();require 'uri'
require 'net/http'
url = URI("https://demo-api.mobula.io/api/2/wallet/labels/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"walletAddress": "<string>",
"labels": [
"<string>"
],
"walletMetadata": {
"entityName": "<string>",
"entityLogo": "<string>",
"entityLabels": [
"<string>"
],
"entityType": "<string>",
"entityDescription": "<string>",
"entityTwitter": "<string>",
"entityWebsite": "<string>",
"entityGithub": "<string>",
"entityDiscord": "<string>",
"entityTelegram": "<string>"
},
"platform": {
"id": "<string>",
"name": "<string>",
"logo": "<string>"
},
"fundingInfo": {
"from": "<string>",
"date": "<string>",
"chainId": "<string>",
"txHash": "<string>",
"formattedAmount": 123,
"currency": {
"name": "<string>",
"symbol": "<string>",
"logo": "<string>",
"decimals": 123,
"address": "<string>"
},
"fromWalletTag": "<string>",
"fromWalletLogo": "<string>",
"fromWalletMetadata": {
"entityName": "<string>",
"entityLogo": "<string>",
"entityLabels": [
"<string>"
],
"entityType": "<string>",
"entityDescription": "<string>",
"entityTwitter": "<string>",
"entityWebsite": "<string>",
"entityGithub": "<string>",
"entityDiscord": "<string>",
"entityTelegram": "<string>",
"extra": {}
}
}
}
],
"pagination": {
"total": 123,
"offset": 123,
"limit": 123
}
}Query Details
| Name | Required | Description |
|---|---|---|
entityName | No | Fuzzy search on entity name (e.g. binance, ansem) |
entityType | No | Exact match on entity type (e.g. cex, dex, individual, fund, bridge) |
label | No | Exact match on wallet label (e.g. Hot Wallet, Cold Wallet, MEV Bot) |
offset | No | Pagination offset (default: 0) |
limit | No | Results per page, 1-100 (default: 20) |
entityName, entityType, or label must be provided.
Usage Examples
- Search by entity name
curl 'https://api.mobula.io/api/2/wallet/labels/search?entityName=binance'
- Search by entity type
curl 'https://api.mobula.io/api/2/wallet/labels/search?entityType=cex&limit=10'
- Search by label
curl 'https://api.mobula.io/api/2/wallet/labels/search?label=MEV%20Bot'
- Combined filters with pagination
curl 'https://api.mobula.io/api/2/wallet/labels/search?entityType=cex&label=Hot%20Wallet&offset=0&limit=20'
Response Fields
| Field | Description |
|---|---|
data | Array of matching wallets (same shape as /2/wallet/labels) |
data[].walletAddress | The wallet address |
data[].labels | Array of labels (proTrader, smartTrader, freshTrader, etc.) |
data[].walletMetadata | Entity metadata (name, logo, type, socials) |
data[].platform | Platform metadata (id, name, logo) if linked to a known platform |
data[].fundingInfo | Funding source information for the wallet |
pagination.total | Total number of matching wallets |
pagination.offset | Current offset |
pagination.limit | Current page size |
Available Entity Types
Common entity types:cex, dex, individual, fund, bridge, mev, hacker, yield, lending-decentralized, derivatives, gaming, liquid-staking, stablecoin, ai, misc, zora-profile.
Available Labels
Common labels:Hot Wallet, Cold Wallet, MEV Bot, Gnosis Safe Proxy, V2 Pool, V3 Pool, Market, Burn Address, Dead Address, Gate Deposit.Query Parameters
Required range:
x >= 0Required range:
1 <= x <= 100⌘I