Limits

Lodapi bleibt ohne Registrierung benutzbar. Der erste Call soll funktionieren, bevor du irgendwo eine Adresse einträgst. Ab einer bestimmten Menge wollen wir aber wissen, wer da ruft — nicht um zu bremsen, sondern um dich erreichen zu können, wenn ein Snapshot wechselt oder ein Endpoint sich ändert.

KontingentZählungDurchsetzung
ohne Key1.000 / Tagpro IP-Adressehart — 429 ab dem 1.001. Call, Reset 00:00 UTC
Trial-Key (7 Tage, lodapi.de/key)5.000 / Tagpro Keyweich — gezählt und in den Quota-Headern sichtbar
Pro / Businesslaut Vertragpro Keyweich — bei Überschreitung melden wir uns

Der Trial-Key kostet nichts, braucht kein Konto und ist in einer Minute da. Er ist der Weg zu mehr als 1.000 Calls am Tag — und gleichzeitig der einzige Weg, dass wir dich bei Änderungen informieren können.

Ohne Key: 1.000 pro Tag und IP

Jede Antwort auf einen keyless Request trägt das Rest-Budget im Header:

curl -si "https://api.lodapi.de/v1/buildings?bbox=8.68,50.11,8.69,50.12" | grep -i x-keyless
# X-Keyless-Remaining: 987

Batch-Skripte sollten den Header lesen und rechtzeitig auf einen Key umschalten, statt in die 429 zu laufen.

Was zählt: alle /v1/-Endpoints — Buildings, Tilesets, Terrain, Terrain-Mesh, OSM-Cover, Vegetation. Auch Fehlerantworten (404, 422) zählen, weil das Limit vor dem Handler greift.

Was nicht zählt:

Die 429

Ist das Budget aufgebraucht, antwortet die API mit 429 Too Many Requests als application/problem+json (RFC 7807):

{
  "type": "https://lodapi.de/errors/keyless-daily-limit",
  "title": "Too Many Requests",
  "status": 429,
  "detail": "Ohne API-Key sind 1.000 Requests pro Tag und IP frei. Einen Testkey mit 5.000/Tag gibt es in einer Minute unter https://lodapi.de/key.",
  "instance": "/v1/terrain/elevation",
  "limit": 1000,
  "retry_after": 42317,
  "key_url": "https://lodapi.de/key",
  "docs_url": "https://lodapi.de/docs/guides/rate-limits"
}

Dazu die Header Retry-After (Sekunden bis zum Reset um Mitternacht UTC) und X-Keyless-Remaining: 0.

Am type erkennst du das Keyless-Limit eindeutig — der 429 vom Trial-Mint (zu viele Keys von einer IP) hat einen anderen type.

import httpx

r = httpx.get("https://api.lodapi.de/v1/buildings", params={"bbox": "8.68,50.11,8.69,50.12"})
if r.status_code == 429:
    problem = r.json()
    if problem["type"].endswith("/keyless-daily-limit"):
        raise SystemExit(f"Key holen: {problem['key_url']}")
    # sonst: Retry-After abwarten

Mit Key

Ein Key reist im Header X-API-Key mit:

curl -H "X-API-Key: lod_…" \
  "https://api.lodapi.de/v1/buildings?bbox=8.68,50.11,8.69,50.12"

Keyed-Traffic ist vom Keyless-Tageslimit nicht betroffen — kein X-Keyless-Remaining, kein 429 daraus. Stattdessen antworten wir mit dem Verbrauch gegen dein Kontingent:

Diese Quota ist heute weich: sie wird gezählt und angezeigt, aber nicht durchgesetzt. Wer regelmäßig darüber liegt, hört von uns — per Mail, nicht per 429.

Was tun bei mehr Bedarf

Trial reicht nicht? Schreib an hello@lodapi.de mit einem Satz zum Use-Case. Und falls du gerade ein ganzes Bundesland Gebäude für Gebäude über die Feature-API ziehst: sag Bescheid, dafür finden wir einen besseren Weg als 500.000 Einzelrequests.

Verwandte Seiten

Bereit?

Der erste Call geht sofort.

LoD2-Gebäude für alle 16 Bundesländer, kostenlos und ohne Konto. Pro auf Anfrage 30 Tage testen.