Use case · Developers

One call: who owns this address?

Wallets, exchanges, invoicing tools and AI agents all face the same question at the moment of a transfer. The WalletOrigin lookup API answers it with a domain-backed proof instead of a guess.

The risk

Your users decide with no signal at all

An address is a string. Without a source of truth, products fall back on user-maintained address books, allowlists that go stale, or nothing — and the support cost lands on you.

  • No way to warn a user that a payout address is unrecognised.
  • Manual allowlists drift out of date the moment a company rotates a wallet.
  • Automated agents transact against addresses they cannot attribute.
A concrete example

A pre-send check inside a wallet app

Before broadcasting a transfer, your client calls the lookup with the destination address and the chain.

  1. 01

    Create an API key in the dashboard and scope it to lookups.

  2. 02

    Call the endpoint with the address and optional chain when a user pastes a destination.

  3. 03

    Show the verified domain in the confirmation screen, or flag the address as unattributed.

What the proof guarantees

Checkable by anyone

  • Every answer is backed by a DNS TXT record plus a wallet signature.
  • Chain-aware: Ethereum and EVM chains, Solana, Bitcoin, Cosmos, Sui and Aptos.
  • Key-authenticated with per-plan rate limits and usage visible in your dashboard.
  • Keys can be scoped and rotated without downtime.
Request
curl "https://walletorigin.com/api/public/lookup\
  ?address=0xAbC…456&chain=ethereum" \
  -H "Authorization: Bearer walletorigin_…"

{ "verified": true, "domain": "acme.com" }

Start querying in minutes

Read the full endpoint reference, then create a key and make your first lookup.

Read the API docs