curl "https://multihopper.com/api/v1/hop-library?bundle=cex&canEndRoute=true" \
-H "x-api-key: mh_live_abc123..."
{
"wallets": [
{
"address": "64CuV85HHCydAwxQMoXwZ9HXoyw5qE65NkiJxCtuFErF",
"label": "OKX Hot Wallet 10",
"category": "cex",
"canEndRoute": true
}
],
"bundles": [
{ "id": "cex", "categories": ["cex"], "available": 74 },
{ "id": "dex", "categories": ["dex"], "available": 61 },
{ "id": "exchanges", "categories": ["cex", "dex"], "available": 135 },
{ "id": "kol", "categories": ["kol"], "available": 100 },
{ "id": "contracts", "categories": ["contracts"], "available": 98 },
{ "id": "mix", "categories": ["cex", "dex", "famous", "kol", "contracts", "other"], "available": 598 }
],
"categories": ["cex", "dex", "famous", "kol", "contracts", "other"]
}
Custom routes
Hop Library
The vetted wallets a custom route can use as hops
GET
/
api
/
v1
/
hop-library
curl "https://multihopper.com/api/v1/hop-library?bundle=cex&canEndRoute=true" \
-H "x-api-key: mh_live_abc123..."
{
"wallets": [
{
"address": "64CuV85HHCydAwxQMoXwZ9HXoyw5qE65NkiJxCtuFErF",
"label": "OKX Hot Wallet 10",
"category": "cex",
"canEndRoute": true
}
],
"bundles": [
{ "id": "cex", "categories": ["cex"], "available": 74 },
{ "id": "dex", "categories": ["dex"], "available": 61 },
{ "id": "exchanges", "categories": ["cex", "dex"], "available": 135 },
{ "id": "kol", "categories": ["kol"], "available": 100 },
{ "id": "contracts", "categories": ["contracts"], "available": 98 },
{ "id": "mix", "categories": ["cex", "dex", "famous", "kol", "contracts", "other"], "available": 598 }
],
"categories": ["cex", "dex", "famous", "kol", "contracts", "other"]
}
Lists the wallets a custom route can draw its hops from. They are exchanges,
DEX accounts, KOL wallets, smart contracts and active traders. This is the same library Easy Routes
use. Use a wallet by its address (
{ "wallet": "<address>" }), or let the route draw one at random
from a bundle when the transfer is created ({ "bundle": "cex" }).
A hop wallet never signs anything. It receives the route’s wrapped token for its wait, then the
program moves it on.
The library is not served on devnet: this endpoint and
bundle hops return MH_019 there. Build
devnet routes from your own wallets.Query parameters
string
Only wallets of this category:
cex, dex, famous, kol, contracts or other.string
Only the wallets a
{ "bundle": ... } hop draws from: cex, dex, exchanges (cex + dex), kol,
contracts or mix (every category).string
true: only wallets that can be the last hop of a route paying several destinations (regular,
on-curve wallets). false: only those that cannot (program-derived addresses and programs, which
work as middle hops).Response
object[]
Each wallet’s
address, label, category and canEndRoute.object[]
Each bundle’s
id, the categories it draws from, and how many wallets are available in it.string[]
Every category.
curl "https://multihopper.com/api/v1/hop-library?bundle=cex&canEndRoute=true" \
-H "x-api-key: mh_live_abc123..."
{
"wallets": [
{
"address": "64CuV85HHCydAwxQMoXwZ9HXoyw5qE65NkiJxCtuFErF",
"label": "OKX Hot Wallet 10",
"category": "cex",
"canEndRoute": true
}
],
"bundles": [
{ "id": "cex", "categories": ["cex"], "available": 74 },
{ "id": "dex", "categories": ["dex"], "available": 61 },
{ "id": "exchanges", "categories": ["cex", "dex"], "available": 135 },
{ "id": "kol", "categories": ["kol"], "available": 100 },
{ "id": "contracts", "categories": ["contracts"], "available": 98 },
{ "id": "mix", "categories": ["cex", "dex", "famous", "kol", "contracts", "other"], "available": 598 }
],
"categories": ["cex", "dex", "famous", "kol", "contracts", "other"]
}

