Zum Hauptinhalt springen

Paginierung

Alle Listen-Endpunkte unterstützen Cursor-basierte Paginierung mit zwei Parametern:
ParameterTypBeschreibung
limitintegerMax. Einträge pro Seite (Standard: 10, Max: 100)
afterstringEinträge nach dieser ID zurückgeben
Ergebnisse sind immer aufsteigend nach ID sortiert. Zum Blättern übergeben Sie die id des letzten Eintrags der vorherigen Antwort als after-Parameter. Paginierte Antworten enthalten ein pagination-Objekt:
{
  "contracts": [ ... ],
  "pagination": {
    "limit": 10,
    "has_more": true
  }
}
Beispielablauf:
  1. GET /v1/transactions?limit=10 — gibt Einträge 1–10 zurück
  2. GET /v1/transactions?limit=10&after=txn_abc123 — gibt Einträge 11–20 zurück
  3. GET /v1/transactions?limit=10&after=txn_xyz789 — gibt Einträge 21–25 zurück, "has_more": false
Der Sammlungsschlüssel in der Antwort entspricht dem Ressourcennamen (z.B. "contracts", "transactions", "nominations", "customers").

Zeitstempel

Alle Zeitstempel sind ISO 8601 in UTC:
2025-07-15T14:30:00Z

Lieferzeiträume

Die Energielieferung verwendet die standardmäßige PTU (Programme Time Unit)-Konvention mit 15-Minuten-Intervallen:
{
  "delivery_date": "2025-07-15",
  "period_from": "2025-07-15T14:00:00Z",
  "period_to": "2025-07-15T14:15:00Z"
}
Jeder Liefertag hat in der Regel 96 Viertelstunden-Slots (nummeriert 1–96). An Tagen mit Zeitumstellung können es 92 oder 100 Slots sein. Slot-basierte Filterung ist bei Transaktions- und Nominierungs-Endpunkten über die Parameter slot_number_from und slot_number_to verfügbar.

Fehlerantworten

Alle Fehler folgen einem einheitlichen Format:
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Lesbare Fehlerbeschreibung",
    "details": [
      {
        "field": "volume_mwh",
        "issue": "Muss eine positive Zahl sein"
      }
    ]
  }
}
Es werden Standard-HTTP-Statuscodes verwendet:
CodeBeschreibung
400Ungültige Anfrage
401Nicht autorisiert — fehlender oder ungültiger API-Schlüssel
403Zugriff verweigert — unzureichende Berechtigungen
404Nicht gefunden — Ressource existiert nicht oder kein Zugriff
422Nicht verarbeitbar — Validierungsfehler
429Zu viele Anfragen — Ratenlimit überschritten
500Interner Serverfehler

Ratenbegrenzung

API-Anfragen sind auf 300 Anfragen pro 60-Sekunden-Fenster begrenzt. Jede Antwort enthält folgende Header:
HeaderBeispielBeschreibung
x-ratelimit-limit300Maximale Anfragen pro Fenster
x-ratelimit-remaining299Verbleibende Anfragen im aktuellen Fenster
x-ratelimit-reset60Sekunden bis das Fenster zurückgesetzt wird
Bei Überschreitung des Limits gibt die API 429 Too Many Requests zurück.