Official TypeScript client for the public API. Zero dependencies. Works in Node, browsers, Deno, and edge runtimes. No API key required for read access.
import { SmartMoney } from "@smartmoney/sdk";
const sms = new SmartMoney();
const { data } = await sms.signals.list({ kind: "stealth", limit: 10 });
for (const sig of data) {
console.log(`${sig.token.symbol} · score ${sig.score} · peak ${sig.performance.peak_pct ?? "—"}%`);
}| Method | Returns | Description |
|---|---|---|
| signals.list(params?) | SignalListResponse | Paginated signal feed with filters |
| signals.get(id) | Signal | null | Fetch a single signal by ID or token address |
| signals.iterate(params?) | AsyncIterable<Signal> | Auto-paginated async iterator |
| stats({ days }) | StatsResponse | Aggregate hit rate, top calls, by-kind breakdown |
| backtest(params?) | BacktestResponse | Equal-weight portfolio replay over N days |
| health() | { status, pipeline } | Live pipeline-health check |
| request<T>(path, init?) | Promise<T> | Escape hatch for any /api endpoint |
/api/v1. Stay on the latest minor version — the API contract is stable, but bug-fixes and new endpoints land regularly.Powered by Smart Money Signals · Built on Birdeye Data API in your app and link back to bds.birdeye.so. Token meta fields are point-in-time Birdeye snapshots; everything else is SMS-derived. Keeps us all on side with Birdeye's ToS.