Kody błędów i statusy — Referencja
Kompleksowy przewodnik po kodach błędów Smart Money API, kodach statusu HTTP i krokach rozwiązywania problemów. Zrozum odpowiedzi na błędy i szybko rozwiąż problemy z integracją.
Kody sukcesu 2xx
Odpowiedzi sukcesu wskazują, że żądanie zostało pomyślnie przetworzone.
| Kod | Status | Znaczenie |
|---|---|---|
| 200 | OK | Żądanie zakończyło się sukcesem. Treść odpowiedzi zawiera żądane dane. |
| 201 | Created | Zasób został pomyślnie utworzony. Odpowiedź zawiera nowy zasób. |
| 204 | No Content | Żądanie zakończyło się sukcesem, ale nie ma treści do zwrócenia (np. DELETE). |
Przykład odpowiedzi 200
Kody błędów klienta 4xx
Błędy klienta wskazują, że żądanie było nieprawidłowe lub błędne. Popraw żądanie i spróbuj ponownie.
| Kod | Status | Przyczyna |
|---|---|---|
| 400 | Bad Request | Nieprawidłowa składnia żądania. Sprawdź parametry zapytania, nagłówki i treść żądania. |
| 401 | Unauthorized | Brakujące lub nieprawidłowe dane uwierzytelniające. Sprawdź swój klucz API lub token JWT. |
| 402 | Payment Required | Płatność za subskrypcję nie powiodła się. Zaktualizuj dane rozliczeniowe na swoim koncie. |
| 403 | Forbidden | Uwierzytelniony, ale nieautoryzowany do tego zasobu. Twój plan nie obejmuje tej funkcji. |
| 404 | Not Found | Zasób nie istnieje. Sprawdź adres URL endpointu i parametry. |
| 429 | Too Many Requests | Przekroczono limit zapytań. Poczekaj przed ponowną próbą. Sprawdź nagłówek Retry-After. |
| 422 | Unprocessable Entity | Walidacja nie powiodła się. Parametry żądania są nieprawidłowe lub brakuje wymaganych pól. |
Przykłady błędów uwierzytelniania
Brakujący klucz API (401)
Nieprawidłowy klucz API (401)
Limitowanie zapytań (429)
Gdy przekroczysz limit zapytań API, serwer zwraca 429 Too Many Requests. Sprawdź nagłówki odpowiedzi, aby uzyskać informacje o limicie:
Odpowiedź na błąd limitu zapytań
Błędy walidacji (422)
Błędy walidacji występują, gdy parametry żądania są nieprawidłowe lub brakuje wymaganych pól.
Kody błędów serwera 5xx
Błędy serwera wskazują na problem po naszej stronie. Są tymczasowe i zazwyczaj szybko się rozwiązują. Zaimplementuj logikę ponawiania z wykładniczym wycofywaniem.
| Kod | Status | Działanie |
|---|---|---|
| 500 | Internal Error | Nieoczekiwany błąd serwera. Ponów próbę z wykładniczym wycofywaniem. |
| 502 | Bad Gateway | Tymczasowa przerwa w usłudze. Ponów próbę po kilku sekundach. |
| 503 | Service Unavailable | Konserwacja lub tymczasowa awaria. Sprawdź stronę statusu. Ponów próbę po interwale Retry-After. |
| 504 | Gateway Timeout | Żądanie trwało zbyt długo. Serwer mógł je przetworzyć mimo wszystko. Sprawdź idempotencję. |
Przykład błędu serwera (503)
Przewodnik rozwiązywania problemów
401 Unauthorized — Nieprawidłowy klucz API
Problem: Otrzymujesz błędy 401, mimo że masz klucz API.
Rozwiązania:
- Sprawdź, czy klucz API jest dołączony w nagłówku Authorization z prefiksem "Bearer"
- Sprawdź, czy Twój klucz API nie wygasł lub nie został unieważniony
- Upewnij się, że używasz właściwego klucza (produkcyjny, stagingowy lub deweloperski)
- Wygeneruj nowy klucz API z konsoli, jeśli obecny został utracony
403 Forbidden — Funkcja niedostępna
Problem: Otrzymujesz błędy 403 na niektórych endpointach.
Rozwiązania:
- Sprawdź swój poziom API. Niektóre endpointy wymagają planów Trader lub Pro
- Przejdź na wyższy plan na /pricing.html, aby uzyskać dostęp do funkcji premium
- Sprawdź, czy klucz API ma włączone wymagane zakresy
- Skontaktuj się z supportem, jeśli uważasz, że powinieneś mieć dostęp
429 Too Many Requests — Limit zapytań
Problem: Otrzymujesz błędy 429 i jesteś limitowany.
Rozwiązania:
- Zaimplementuj logikę ponawiania z wykładniczym wycofywaniem (czekaj 1s, 2s, 4s itd.)
- Buforuj odpowiedzi, aby uniknąć zbędnych zapytań API
- Użyj WebSocket do danych w czasie rzeczywistym zamiast sondowania endpointów REST
- Przejdź na wyższy plan, aby uzyskać większe limity (Trader 1,000/dzień, Pro 5,000/dzień)
- Grupuj wiele zapytań w pojedyncze żądania, jeśli to możliwe
400 Bad Request — Nieprawidłowe parametry
Problem: Otrzymujesz błędy 400 z nieprawidłowymi żądaniami.
Rozwiązania:
- Sprawdź dokumentację API pod kątem wymaganych i opcjonalnych parametrów
- Sprawdź typy parametrów (ciągi znaków vs liczby, tablice vs obiekty)
- Upewnij się, że JSON jest prawidłowy i poprawnie sformatowany
- Używaj prawidłowych adresów URL endpointów z właściwymi parametrami ścieżki
- Sprawdź literówki w nazwach parametrów zapytania
Błędy serwera 5xx - Tymczasowe awarie
Problem: Otrzymujesz błędy 500, 502, 503 lub 504.
Rozwiązania:
- Sprawdź status usługi na https://status.smartmoneyapi.com
- Zaimplementuj automatyczne ponawianie z wykładniczym wycofywaniem (maks. 5-10 prób)
- Poczekaj 30-60 sekund przed ponowną próbą w przypadku błędów 503
- Użyj nagłówka Retry-After, aby określić czas ponownej próby
- Subskrybuj stronę statusu, aby otrzymywać powiadomienia o incydentach
Format odpowiedzi błędów
Wszystkie odpowiedzi błędów mają spójny format:
Potrzebujesz więcej pomocy?
Sprawdź naszą dokumentację API lub skontaktuj się z pomocą techniczną, podając kod błędu i szczegóły żądania.
Dokumentacja APIWsparcie
Masz pytania? Sprawdź naszą dokumentację lub skontaktuj się z pomocą techniczną.
Otwórz konsolę