Skip to main content
The Wallet API is in Beta. Endpoints and response formats may change.

Overview

The Wallet Identity endpoint identifies known wallet addresses on Solana, including centralized exchanges, DeFi protocols, institutions, and other recognized entities. Use it for compliance, analytics, and displaying human-readable names for known addresses. Both the single (GET /v1/wallet/{wallet}/identity) and batch (POST /v1/wallet/batch-identity, up to 100 entries) endpoints accept SNS .sol domains and ANS custom TLDs (e.g. .bonk, .poor, .abc) in addition to raw Solana addresses. Domain resolution is mainnet-only. This endpoint uses the same identity system that powers Orb, the Helius Solana block explorer. The database includes 32,500+ labels (human-readable primary names, including 3,000+ programs) and 21.5M+ tags (categorical properties like “Binance deposit address” or “Seeker Phone”), and is continuously growing. Both the single (GET /v1/wallet/{wallet}/identity) and batch (POST /v1/wallet/batch-identity) endpoints require a paid plan. Requests made with a Free-plan API key return 403 Forbidden. See Plan requirements for the full coverage table.

When to use this

Use the Wallet Identity API when you need to:
  • Identify exchange wallets: determine if a wallet belongs to Binance, Coinbase, Kraken, and others.
  • Track protocol activity: identify DeFi protocol wallets and treasury addresses.
  • Compliance and AML: flag transactions involving known entities.
  • Analytics: categorize wallet types in your data pipeline.
  • User experience: display “Sent to Binance 1” instead of a raw address.
  • Batch processing: look up hundreds of addresses efficiently.

Quickstart

Single wallet lookup

Look up identity information for a single wallet address:

Look up by domain name

You can also pass an SNS .sol domain or an ANS custom TLD directly — the endpoint resolves the domain and returns the identity of the owner address:
The single-endpoint response is the standard identity object for the resolved address — there is no inputDomain marker. If you need to correlate inputs with outputs (for example, when looking up many domains at once), use the batch endpoint.
Domain resolution is mainnet-only. On devnet/testnet, a domain input to this endpoint returns 400. Positive resolutions are cached for up to 2 hours, so a recently-transferred domain may briefly resolve to the prior owner’s identity.

Batch lookup (up to 100 entries)

Look up multiple entries in a single request for better performance. Each entry can be either an address or a domain name:

Response format

A successful single lookup returns the identity object for the resolved address:
In a batch response, any entry whose input was a domain name carries an additional inputDomain field so you can correlate the response back to the original request:
When a domain in a batch request cannot be resolved, the batch does not fail — the entry is returned in place with address: null, type: "unknown", and unresolved: true. Request order is preserved:
On the single endpoint, a 404 is returned if the wallet has no identity entry or if a domain input could not be resolved:

Identity categories

Wallets and programs are classified into categories powered by the Orb identity database. Accounts and programs use separate category sets. The tables below list every supported category.
Programs (smart contracts) are classified separately:

Use cases

Flag exchange deposits

Identify when funds are sent to a centralized exchange:

Display human-readable names

Show friendly names in your UI instead of addresses:

Batch process transaction counterparties

Efficiently identify all counterparties in a list of transactions:

Best practices

  • Use the batch endpoint for multiple lookups. When looking up more than one address, POST /v1/wallet/batch-identity is significantly faster than making individual requests.
  • Handle 404 responses gracefully. Not all wallets have identity information. Fall back to displaying the raw address.
  • Cache results. Identity data changes infrequently. Cache locally to reduce API calls.
  • Respect the batch size limit. The batch endpoint supports up to 100 entries per request. Chunk larger datasets accordingly.

Common errors

Next steps

Funding Source

Trace who originally funded a wallet — funder types reuse these identity categories.

Wallet API Overview

All Wallet API endpoints and shared conventions.

API Reference

Request and response schemas for identity lookup.