SPI API Documentation

Access commodity-in-satoshis pricing data programmatically. Track how purchasing power changes over time.

🆓

Free Tier

$0/month

  • ✓ 10 requests per day
  • ✓ Last 12 months of data
  • ✓ All 15 commodities
  • ✓ JSON response format
  • ✓ Rate limit headers
COMING SOON
âš¡

Premium Tier

$29/month

  • âš¡ Unlimited requests
  • âš¡ Full historical data (2010+)
  • âš¡ Up to 1000 results per request
  • âš¡ Priority support
  • âš¡ Webhook notifications

Get Your API Key

Sign in to generate your free API key

Authentication

Include your API key in every request using a Bearer token or query parameter:

curl -H "Authorization: Bearer spi_yourkey" https://satoshipriceindex.xyz/api/v1/prices

Or via query parameter:

curl "https://satoshipriceindex.xyz/api/v1/prices?api_key=spi_yourkey"
GET/api/v1/prices

Fetch SPI data — commodity prices in satoshis

Parameters

NameTypeDefaultDescription
assetstringBTCCryptocurrency asset (BTC or BSV)
itemstringallCPI series code (e.g. APU0000704111 for bacon)
fromdate-12mo (free)Start date (YYYY-MM-DD). Premium: unlimited history
todatetodayEnd date (YYYY-MM-DD)
limitnumber100Max results (free: 100, premium: 1000)

Example Response

{
  "data": [
    {
      "date": "2025-01-01",
      "item": "Bacon",
      "item_code": "APU0000704111",
      "emoji": "🥓",
      "satoshi_price": 724,
      "usd_price": 7.24,
      "asset_usd": 100000,
      "monthly_change_pct": -2.3,
      "asset": "BTC"
    }
  ],
  "meta": {
    "tier": "free",
    "rate_limit": { "daily": 10, "remaining": 9 }
  }
}
GET/api/v1/series

List all tracked CPI commodity series with metadata

Example Response

{
  "data": [
    {
      "code": "APU0000704111",
      "name": "Bacon",
      "emoji": "🥓",
      "category": "food",
      "unit": "USD",
      "is_active": true
    }
  ],
  "meta": {
    "tier": "free",
    "rate_limit": { "daily": 10, "remaining": 8 }
  }
}

Rate Limiting

Every response includes rate limit headers:

  • X-RateLimit-Limit — Your daily request limit
  • X-RateLimit-Remaining — Requests remaining today

When exceeded, you'll receive a 429 Too Many Requests response. Limits reset daily at midnight UTC.

📬

SPI Newsletter

Monthly insights on how everyday costs are changing in satoshis. No spam.

Crafted by Ceboruco Studios