Skip to content

⚡ Cache API

Übersicht

API-Caching für schnellere Responses.

Cache Headers

Jede Response enthält Cache-Info:

X-Cache: HIT        # Cache-Treffer
X-Cache: MISS       # Kein Cache, frische Daten
X-Cache-Age: 45     # Sekunden seit Cache
X-Cache-TTL: 600    # Gültigkeitsdauer in Sekunden

Endpoints

GET /api/cache/stats

Cache-Statistiken abrufen.

Response:

{
  "type": "MemoryCache",
  "size": 42,
  "config": {
    "properties": { "ttl": 3600, "prefix": "prop" },
    "contracts": { "ttl": 1800, "prefix": "cont" },
    "evcc/state": { "ttl": 10, "prefix": "evcc" }
  }
}

DELETE /api/cache

Cache leeren.

Query Parameters:

Param Type Description
prefix string Nur bestimmten Prefix löschen

Beispiele:

# Gesamten Cache leeren
curl -X DELETE http://localhost:3000/api/cache

# Nur evcc Cache leeren
curl -X DELETE http://localhost:3000/api/cache?prefix=evcc

Cache TTL Konfiguration

Route TTL Grund
/api/properties 1h Statische Daten
/api/contracts 30min Selten geändert
/api/integrations/evcc/* 10s Realtime-Daten
/api/integrations/sevdesk/* 10min API-Rate-Limits

Cache Invalidierung

Cache wird automatisch invalidiert bei:

  • POST - Neuer Eintrag
  • PUT / PATCH - Update
  • DELETE - Löschen

Edge Cache (Cloudflare)

Für Production kann ein Edge-Cache vor dem Backend geschaltet werden:

[Client] → [CF Worker] → [Express Backend]
         [KV Cache]

Siehe Edge Cache Architecture