WalletOrigin Lookup API
Query any blockchain address to see whether it has been cryptographically bound to a verified company domain. Supports Ethereum, Solana, Bitcoin, Cosmos, Sui, and Aptos addresses. Perfect for wallets, explorers, exchanges, and compliance tools.
Authentication
Every request needs an API key. Create one in your dashboard. Pass it in the Authorization header as a bearer token, or in the x-api-key header.
/api/public/lookupLook up all verified domain bindings for a blockchain address across supported chains.
Query parameters
addressrequired · string · any supported chain formatThe blockchain address to look up. Accepts Ethereum, Solana, Bitcoin, Cosmos, Sui, and Aptos addresses. EVM addresses are case-insensitive; other address formats are case-sensitive.
Example request
curl "https://walletorigin.com/api/public/lookup?address=0xAbC1234567890abcdef1234567890abcdef123456" \
-H "Authorization: Bearer pdns_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"Response — verified
{
"address": "0xabc1234567890abcdef1234567890abcdef123456",
"verified": true,
"proofs": [
{
"domain": "company.com",
"chain": "ethereum",
"verified_at": "2026-07-05T10:20:30.000Z"
}
]
}Response — no proof
{
"address": "0x0000000000000000000000000000000000000000",
"verified": false,
"proofs": []
}Errors
| Status | Meaning |
|---|---|
| 400 | Invalid or missing address |
| 401 | Missing or invalid API key |
Supported blockchains & wallets
WalletOrigin verifies ownership by asking the user to sign a challenge with one of the supported wallets for each chain.
| Chain | Address format | Supported wallets / extensions |
|---|---|---|
| Ethereum / EVM | 0x + 40 hex chars | MetaMask, Rabby, Coinbase, Trust, Frame, Taho |
| Solana | Base58 | Phantom, Solflare, Backpack |
| Bitcoin | bc1… / 1… / 3… | Xverse, Unisat, Leather |
| Cosmos | bech32 (e.g. cosmos1…) | Keplr, Leap |
| Sui | 0x + 64 hex chars | Suiet, Sui Wallet |
| Aptos | 0x + 64 hex chars | Petra, Martian |