Przejdź do treści
Dokumentacja API

Błędy API

Każda odpowiedź z błędem niesie pole type wskazujące jedną z poniższych sekcji. Treść w odpowiedzi jest zawsze po angielsku - protokołu nie tłumaczymy.

Postać odpowiedzi z błędem

Błędy zwracamy zgodnie z RFC 9457, z typem treści application/problem+json. Pole type odsyła do wyjaśnienia, title to krótka angielska nazwa, status powtarza kod HTTP, detail opisuje konkretny przypadek, a instance to ścieżka, na której błąd powstał.

json
{
  "type": "https://spotforecast.eu/problems/unknown-zone",
  "title": "Unknown bidding zone",
  "status": 404,
  "detail": "Zone XX is not available",
  "instance": "/v1/forecast"
}

invalid-request

HTTP 400Invalid request

W żądaniu jest parametr, którego API nie przyjmuje. Może brakować parametru wymaganego albo parametr ma nieznaną wartość lub zły format. Pole detail w odpowiedzi mówi, o który parametr chodzi; jego dozwolone wartości znajdziesz przy endpoincie w dokumentacji.

no-route

HTTP 404No such endpoint

Ten adres nie należy do API. Sprawdź ścieżkę wraz z /v1 na początku; pełna lista endpointów jest w openapi.json.

unknown-zone

HTTP 404Unknown bidding zone

Nie znamy takiego kodu strefy. Kody bierz z /v1/zones i przepisuj dokładnie, z wielkimi literami i myślnikami (DK1, IT-NORD).

no-forecast

HTTP 404No forecast for this zone

Strefa istnieje, ale prowadzimy dla niej wyłącznie rozliczone ceny rynkowe, bez prognozy. Użyj dla niej /v1/prices; które strefy mają prognozę, mówi pole has_forecast w /v1/zones.

no-vintage

HTTP 404No forecast of that vintage

Na żądany moment as_of ani wcześniej żadna prognoza nie została opublikowana. Ponowienie nie pomoże - poproś o nowszy as_of.

missing-credentials

HTTP 401Missing API key

Żądanie nie niesie klucza API. Wyślij go w nagłówku Authorization: Bearer <klucz> albo X-API-Key: <klucz>.

invalid-credentials

HTTP 401Invalid API key

Nie znamy tego klucza albo został unieważniony. Sprawdź, czy skopiowałeś go w całości; nowy utworzysz w swoim koncie.

plan-limit

HTTP 403Not available on your plan

Żądanie sięga dalej, niż pozwala twój plan. Co obejmuje twój plan, zobaczysz w swoim koncie.

rate-limit

HTTP 429Rate limit exceeded

Dzienna pula żądań jest wyczerpana. Nagłówek Retry-After mówi, za ile sekund spróbować ponownie, a X-RateLimit-Remaining ile żądań zostało; limit liczy się na konto, a nie na pojedynczy klucz, więc więcej kluczy go nie zwielokrotni.

no-data

HTTP 503No data available

Dla tej strefy wydajemy prognozy, ale żaden przebieg modelu jeszcze nie dotarł. Tu ponowienie ma sens - inaczej niż przy 404 jest to stan przejściowy.

internal

HTTP 500Internal server error

Błąd po naszej stronie. Spróbuj powtórzyć żądanie, a jeśli problem się utrzymuje, odezwij się do nas i dołącz czas żądania oraz pole instance z odpowiedzi.