tail-fin-arkham
Arkham Intel data API client for the tail-fin workspace — chain analytics, address profiles, entity search, transfer flow. Pure HTTP, no browser, no cookies, no per-user secret.
Why
Arkham's api.arkm.com is signed at the SPA layer with a static client key embedded in the JS bundle — same value for every user. This crate extracts that key, computes the right X-Payload / X-Timestamp headers, and calls the API directly via wreq. The bulk of the documented 84-endpoint surface is reachable this way.
Usage
use ;
let client = new?;
let res = client.search.await?;
let profile = client.address_enriched.await?;
let bases = ;
let page = client
.transfers
.await?;
See docs/sites/arkham.md for full details on the auth model, signing algorithm, endpoint coverage, and CLI usage.
Testing
# Unit tests — signing fixtures + parsing
# Live regression (network)
The signing tests pin the algorithm against 5 real (path, timestamp, payload) tuples lifted from a 2026-04-30 HAR. If Arkham rotates NEXT_PUBLIC_WEBAPP_CLIENT_KEY upstream, all 3 signing tests + all 3 live tests fail at once with clear diagnostics.