Signal API v1

The briefing, as JSON

GET /v1/trends returns the same signals the daily briefing publishes — onchain moves, GitHub velocity, Hacker News, arXiv, gas, Smart Money — as structured JSON with evidence links and a confidence score.

Without a key you get today's free signals, 20 requests per day per IP. With a Premium key you get the full dated archive and Smart Money, 1,000 requests per day. The API is included in Premium ($5, one time) at no extra charge.

Endpoints

GET https://speculix.nanocorp.app/v1/trends            latest run
GET https://speculix.nanocorp.app/v1/trends/{date}   one dated run (Premium key)
GET https://speculix.nanocorp.app/v1/health          last run, unauthenticated

Query parameters (on /v1/trends)

dateISO date (2026-09-15). Without it: the latest run. Premium key required for past dates.
sectionmarket | onchain_pulse | tech_ai | research | community | smart_money
sourceFilter by source name, e.g. DeFiLlama, GitHub, Nansen
min_confidenceOnly signals scoring at or above this 0–100 number
limit1–100, default 25
langen (default) | fr

Confidence score

Every signal carries a confidencebetween 0 and 100. It is a published formula over the same measured inputs that set a signal's strength — not a model output and not a prediction. It measures how large the observed move is and how many independent sources the run reached.

confidence      = 35 + 50 × magnitude + corroboration, clamped to 0–100

magnitude       0–1 ratio of the observed move to the source's own high bar: |24h price move| ÷ 20% (CoinGecko), |7d TVL move| ÷ 20% (DeFiLlama), 24h volume ÷ $500M (DeFiLlama DEX), stars ÷ 200 (GitHub), points ÷ 200 (Hacker News), gas ÷ 60 gwei (Etherscan), |24h netflow| ÷ $250K (Nansen). arXiv has no numeric bar: 0.6 on a topic match, 0.25 otherwise. A new-pool TVL card is 0.8.

corroboration   3 × the number of other sources that returned signals in the same run, capped at +15

Archive signals from before the score existed return confidence: null rather than an invented number.

Example

curl -H "Authorization: Bearer spx_live_…" "https://speculix.nanocorp.app/v1/trends?section=smart_money&limit=2"
{
  "date": "2026-09-15",
  "generated_at": "2026-09-15T06:00:41Z",
  "sources_used": ["CoinGecko", "DeFiLlama", "GitHub", "Hacker News", "arXiv", "Etherscan", "Nansen"],
  "count": 2,
  "signals": [
    {
      "id": "2026-09-15-smart_money-1",
      "section": "smart_money",
      "source": "Nansen",
      "title": "Smart money accumulated $1.20M of FARTCOIN in 24h",
      "value": "+1.20M net 24h · 18 tracked wallets · Solana",
      "change": "+1.20M net 24h",
      "detail": "Nansen smart-money netflow on Solana shows net buying of FARTCOIN …",
      "url": "https://solscan.io/token/…",
      "strength": "high",
      "confidence": 92
    }
  ]
}

Rate limits and errors

No keytoday's free signals only · 20 requests/day per IP
Premium keyfull dated archive + Smart Money · 1,000 requests/day per key

Responses carry X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers. Over the cap you get 429 with the reset time in UTC. A date with no run returns 404 with the nearest dates either side. Authentication accepts Authorization: Bearer spx_live_… or X-API-Key.

Request a key

Enter the email you paid with. If it is in the Premium list, a key is generated and emailed to you — shown once, stored hashed. If not, we email you the $5 one-time checkout link.

Lost a key or want it revoked? Email hello@speculix.nanocorp.app from the Premium address.

Speculix surfaces emerging trends and signals; it is not financial advice. Premium is $5, one time — unlock Premium.