API Kangura¶
Kangur wystawia REST API dla wszystkiego, co widać w panelu — te same adresy obsługują interfejs i integracje po Twojej stronie. Nie ma osobnego, uboższego „API publicznego”.
Dwa sposoby uwierzytelnienia¶
| Sposób | Do czego | Nagłówek |
|---|---|---|
| Klucz API | integracje serwer–serwer, skrypty, automatyzacje po Twojej stronie | X-API-Key: <klucz> |
| Token sesji (JWT) | panel w przeglądarce | Authorization: Bearer <token> |
Klucz API działa w imieniu całego konta, nie pojedynczego użytkownika — nie dziedziczy niczyich uprawnień i nie zniknie, gdy pracownik odejdzie z firmy. Zakładasz go w Ustawieniach → Klucze API (szczegóły).
Izolacja danych¶
Każde zapytanie widzi wyłącznie dane Twojego konta. Nie da się odczytać cudzych zamówień, podając ich identyfikator — odpowiedzią jest 404, nie cudzy rekord. Ta granica jest sprawdzana osobnym testem przy każdym adresie, nie zakładana z góry.
Kody odpowiedzi, na które warto się przygotować¶
| Kod | Co znaczy | Co zrobić |
|---|---|---|
401 |
brak lub zły klucz | sprawdź nagłówek X-API-Key |
403 |
klucz poprawny, brak uprawnień do tej operacji | sprawdź rolę / zakres klucza |
404 |
zasób nie istnieje albo należy do innego konta | nie ponawiaj — to nie jest błąd chwilowy |
422 |
operacja odrzucona z podanym powodem | powód jest w polu detail, przeczytaj go |
5xx |
błąd po naszej stronie | ponów z odstępem |
422 to nie to samo co 500
Kangur używa 422 tam, gdzie operacja jest niemożliwa z powodu, który potrafimy nazwać —
na przykład kurier odrzucił nadanie przesyłki. W polu detail jest treść od kuriera,
nie ogólnik. Warto ją logować po swojej stronie zamiast samego kodu.
Dalej¶
- Adresy REST — grupy zasobów i konwencje
- Webhooki — zdarzenia wysyłane do Ciebie