---
title: "Public any-address lookup (Research-tier)"
method: GET
path: "/address/{addr}/lookup"
tags: ["BTC"]
---

# Public any-address lookup (Research-tier)

`GET /address/{addr}/lookup`

## Request

- Base URL: `https://swisswhaleintelligence.com/v1`
- URL: `https://swisswhaleintelligence.com/v1/address/{addr}/lookup`
- Auth: HTTP bearer

Resolves ANY valid Bitcoin address by proxying mempool.space (cached 5 min, rate-limited 5 QPS globally). Differentiation vs /address/{addr}: this works for addresses NOT in the whale-tracked set — useful for ad-hoc forensics, academic research, journalist source-checks. Returns balance_btc, tx_count, mempool stats. Optionally include UTXOs + recent TXs.

## Path parameters

- `addr` string, required

## Query parameters

- `utxos` boolean
- `txs` boolean
- `tx_limit` integer

## Response `200`

Address summary + optional UTXOs/TXs

- AddressLookupResponse
  - `_source` 'electrs' | 'mempool.space' | 'cache'
  - `address` string
  - `balance_btc` number
  - `tx_count` integer
  - `txs` object[], nullable
  - `utxos` object[], nullable

## Other responses

- `401`: Authentication required or failed. Includes X-RateLimit-* headers when key was identified.
- `404`: Address has no on-chain history per mempool.space
- `429`: Rate limit exceeded. Honour Retry-After header.
- `502`: Upstream service error.

---

[API](https://skmtc.dev/swisswhaleintelligence/apis/swiss-whale-intelligence-api.md) · [All operations](https://skmtc.dev/swisswhaleintelligence/apis/swiss-whale-intelligence-api/llms.txt) · [OpenAPI document](https://skmtc.dev/swisswhaleintelligence/apis/swiss-whale-intelligence-api/revisions/dcb44bc52418?raw)
