hypox.ch

Menü

Entwickler-API

Schweizer Zins-API

Eine kostenlose, öffentliche JSON-API für Schweizer Zinsdaten: den SNB-Leitzins, den hypothekarischen Referenzzinssatz und die aggregierten Hypothekar-Richtsätze der Schweizer Anbieter. Kein API-Key, keine Registrierung — fair use. Die Daten werden täglich aktualisiert und direkt vom Edge ausgeliefert.

Endpoints

Endpoint Beschreibung Quelle
GET /api/v1/policy-rate SNB-Leitzins — aktueller Wert plus vollständige Historie der Zinsentscheide seit 2008. Schweizerische Nationalbank (SNB)
GET /api/v1/reference-rate Hypothekarischer Referenzzinssatz — aktueller Wert plus Historie seit 2008, massgebend für Mietzinsanpassungen. Bundesamt für Wohnungswesen (BWO)
GET /api/v1/mortgage-rates Aggregierte Hypothekar-Richtsätze pro Anbieter — Durchschnitt der publizierten Sätze über unsere Quellen, für Saron-, variable und Festhypotheken. Tägliche hypox-Erhebung bei Schweizer Anbietern

Antwort

Die beiden Zinsreihen-Endpoints (policy-rate, reference-rate) liefern dieselbe Struktur und antworten immer mit HTTP 200 — ein statischer Fallback stellt sicher, dass die Reihe nie leer ist.

{
  "rateType": "snb-policy-rate",
  "current": { "rate": 0, "validFrom": "2025-06-19" },
  "changes": [
    { "validFrom": "2008-12-11", "rate": 0.5 },
    { "validFrom": "2025-06-19", "rate": 0 }
  ],
  "updatedAt": "2026-06-18",
  "provider": "hypox.ch"
}
Feld Typ Beschreibung
rateType string Kennung der Reihe: "snb-policy-rate" oder "mortgage-reference-rate".
current object Der aktuell gültige Eintrag — immer das letzte Element von "changes".
current.rate number Satz in Prozent pro Jahr (Prozentpunkte), z. B. 0.5.
current.validFrom string ISO-Datum (JJJJ-MM-TT), ab dem der Satz gilt.
changes array Alle Änderungspunkte in aufsteigender Reihenfolge; der Satz gilt bis zum nächsten Eintrag.
updatedAt string ISO-Zeitstempel bzw. -Datum der letzten Aktualisierung.
provider string Immer "hypox.ch".

Antwort: mortgage-rates

Der Endpoint /api/v1/mortgage-rates liefert pro Anbieter die aggregierten Richtsätze (Durchschnitt über unsere Quellen, nur Standard-Konditionen). Für diese Daten gibt es keinen statischen Fallback: Sind sie vorübergehend nicht verfügbar, antwortet der Endpoint mit HTTP 503 (ungecacht) — Integrationen sollten diesen Fall behandeln.

{
  "rateType": "mortgage-provider-averages",
  "count": 57,
  "providers": [
    {
      "id": "zkb",
      "name": "Zürcher Kantonalbank",
      "rates": [
        { "product": "saron", "termYears": null, "rate": 1.05, "isFromRate": false, "sources": 2 },
        { "product": "fixed", "termYears": 10, "rate": 1.58, "isFromRate": true, "sources": 3 }
      ]
    }
  ],
  "updatedAt": "2026-07-10T05:30:00.000Z",
  "provider": "hypox.ch"
}
Feld Typ Beschreibung
rateType string Immer "mortgage-provider-averages".
count number Anzahl Anbieter in "providers".
providers array Ein Eintrag pro Anbieter, alphabetisch nach "id" sortiert.
providers[].id string Stabiler Anbieter-Slug, z. B. "zkb".
providers[].name string Anzeigename des Anbieters.
providers[].rates array Ein Eintrag pro Produkt (Saron, variabel, Festlaufzeiten).
rates[].product string "saron", "variable" oder "fixed".
rates[].termYears number | null Laufzeit in Jahren bei Festhypotheken, sonst null.
rates[].rate number Durchschnittlicher publizierter Satz in Prozent pro Jahr.
rates[].isFromRate boolean true, wenn mindestens eine Quelle einen «ab»-Satz publiziert.
rates[].sources number Anzahl Quellen, über die gemittelt wurde.
updatedAt string ISO-Zeitstempel bzw. -Datum der letzten Aktualisierung.
provider string Immer "hypox.ch".

Aktualität & Caching

  • Die Daten werden täglich aktualisiert: Leitzins und Referenzzinssatz aus den offiziellen Quellen (SNB und BWO), die Anbieter-Richtsätze aus unserer eigenen Erhebung.
  • Antworten werden eine Stunde am Edge zwischengespeichert (Cache-Control: public, s-maxage=3600).
  • Diese Sätze ändern sich nur wenige Male pro Jahr — die stündliche Zwischenspeicherung ist also mehr als aktuell genug.

Beispiele

curl

curl -s https://www.hypox.ch/api/v1/policy-rate | jq '.current'

JavaScript

const res = await fetch("https://www.hypox.ch/api/v1/policy-rate");
const data = await res.json();
console.log(data.current.rate, "% —", data.current.validFrom);

Google Sheets

=IMPORTDATA("https://www.hypox.ch/api/v1/policy-rate?format=csv")

Alle Endpoints liefern mit ?format=csv eine flache CSV-Tabelle — ideal für Google Sheets (IMPORTDATA), Excel oder Datenpipelines.

Embed-Widget: aktueller Leitzins

Du willst den aktuellen SNB-Leitzins auf deiner Website anzeigen, ohne selbst die API anzubinden? Kopiere dieses Snippet: Das Script füllt den Platzhalter mit dem aktuellen Wert — der Rest ist normales HTML und lässt sich frei umformulieren und stylen.

<p>
  Aktueller SNB-Leitzins: <strong data-hypox-rate>–</strong>
  (Quelle: <a href="https://www.hypox.ch/de/leitzins">hypox.ch</a>)
</p>
<script async src="https://www.hypox.ch/embed/policy-rate.js"></script>

Vorschau

Aktueller SNB-Leitzins: (Quelle: hypox.ch)

Das Script ist winzig (unter 1 KB), lädt asynchron und verändert ausschliesslich Elemente mit dem Attribut data-hypox-rate. Wir freuen uns, wenn der Quellen-Link auf hypox.ch im Snippet bleibt.

CORS

Die API sendet Access-Control-Allow-Origin: * — du kannst sie also direkt aus jedem Browser-Frontend abfragen.

Versionierung

Der Pfad ist versioniert (/api/v1/). Innerhalb von v1 kommen nur Felder hinzu, es werden keine entfernt oder umbenannt — bestehende Integrationen laufen also weiter.

Namensnennung & Nutzung

Kostenlos nutzbar. Wenn dir die Daten helfen, freuen wir uns über einen Link zurück auf hypox.ch. Die zugrunde liegenden Zahlen sind offizielle öffentliche Daten der Schweizerischen Nationalbank (SNB) und des Bundesamts für Wohnungswesen (BWO); hypox.ch sammelt und veröffentlicht sie. Ohne Gewähr — für rechtsverbindliche Entscheide immer die offiziellen Quellen prüfen.

Fragen? hello@hypox.ch