Developers & Data

Free rate data API & embed tools

SwitchWize rate data is free to use with attribution. Pull live rates from the JSON API, embed a widget, or cite a dataset. Attribute as “SwitchWize (switchwize.com)” and link back where practical. Commercial use is subject to our terms.

Public rates API

Top live rates as JSON. Auth-free, CORS-open, edge-cached (~1 hour). Categories: savings, cds, money-market, checking, mortgage. Optional ?limit= (1–25, default 8). The same contract is also available at /savings.json, /cds.json, /money-market.json, /checking.json, and /mortgage.json.

GET https://www.switchwize.com/api/public/rates/savings?limit=5

{
  "schemaVersion": "2026-07-01",
  "id": "rates:savings",
  "category": "savings",
  "rate_type": "APY",
  "count": 5,
  "asOf": "2026-07-02T14:31:00.644Z",
  "generatedAt": "2026-07-02T14:58:28.955Z",
  "freshnessStatus": "fresh",
  "attribution": "SwitchWize (https://www.switchwize.com)",
  "attributionDetails": {
    "requiredText": "SwitchWize (switchwize.com)"
  },
  "sourceDetails": {
    "method": "verified_observations"
  },
  "rates": [
    { "rank": 1, "institution": "...", "product": "...", "rate": 4.40, "rate_type": "APY", "fdic_insured": true }
  ]
}

Read-only data tools

Agent-callable helper tools expose the same public data contracts. Tools are read-only and return freshness, source, and attribution metadata.

GET https://www.switchwize.com/api/public/tools

POST https://www.switchwize.com/api/public/tools/get_top_rates
{ "category": "savings", "limit": 5 }

POST https://www.switchwize.com/api/public/tools/compare_switch_savings
{ "currentApy": 0.01, "balance": 25000 }

POST https://www.switchwize.com/api/public/tools/get_bank_gap_index
{}

POST https://www.switchwize.com/api/public/tools/get_reality_score
{ "card": "platinum-card", "segment": "small-business-owner" }

For local MCP clients, the repository also ships a stdio MCP server inpackages/mcp-server. Start it with npm run mcp:start and verify the protocol handshake with npm run mcp:smoke.

Embeddable widgets

Drop a live rate table or index figure into any page with an iframe. Widgets are self-contained and carry a backlink to SwitchWize.

<!-- Top rates table -->
<iframe src="https://www.switchwize.com/embed/rates/savings"
        width="440" height="320" style="border:0" loading="lazy"></iframe>

<!-- Index figure -->
<iframe src="https://www.switchwize.com/embed/indices/cd-spread"
        width="440" height="200" style="border:0" loading="lazy"></iframe>

<!-- Optional: auto-fit iframe heights to their content -->
<script>(function(){window.addEventListener("message",function(e){if(e.origin!=="https://www.switchwize.com")return;var d=e.data;if(!d||d.type!=="sw-embed-resize")return;var f=document.getElementsByTagName("iframe");for(var i=0;i<f.length;i++){if(f[i].contentWindow===e.source){f[i].style.height=d.height+"px";break;}}});})();</script>

Citable datasets

Dated monthly time series for each SwitchWize index, as machine-readable JSON with Dataset schema. JSON datasets include schemaVersion, asOf, freshnessStatus, and a series array.

Rates are collected from official provider pages where available and cross-checked against trusted sources. Data is provided as-is for informational use; verify with the provider before acting. Questions: editorial@switchwize.com.