Przejdź do głównej zawartości

Uwierzytelnianie

Każde zapytanie do Stawki wymaga nagłówka Authorization zawierającego token bearer:

Okno terminala
curl https://api.stawka.eu/rates \
-H "Authorization: Bearer cp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Na potrzeby przykładów uruchamianych w przeglądarce (np. osadzonych w dokumentacji) API akceptuje tę samą wartość jako parametr zapytania ?api_key=. W środowisku produkcyjnym zdecydowanie preferuj nagłówek — parametry w URL trafiają do logów dostępowych serwerów.

Klucze mają łącznie 51 znaków:

cp_live_<43 znaki w base64url>
  • cp_live_ — prefiks środowiska. cp_test_ jest zarezerwowane na przyszły tryb piaskownicy.
  • 43-znakowy korpus to 32 bajty kryptograficznie losowych danych, zakodowane w base64url bez paddingu.

Stawka przechowuje tylko hash SHA-256 każdego klucza oraz pierwsze 12 znaków (cp_live_XXXX), aby panel mógł wyświetlić rozpoznawalny prefiks na liście kluczy. Zgubionego lub ujawnionego klucza nie da się odzyskać — odwołaj go w panelu i wygeneruj nowy.

Kliknięcie Odwołaj w panelu:

  1. Ustawia kolumnę revoked_at przy kluczu w bazie danych. Wiersz pozostaje w tabeli na potrzeby ścieżki audytu.
  2. Usuwa wpis z naszego edge’owego cache’u KV.

W najgorszym przypadku odwołany klucz może działać jeszcze przez maksymalnie 60 sekund, dopóki nie zakończy się trwające rozgrzewanie cache’u. Panel pokazuje TTL cache’owanego klucza jako wskazówkę. Jeśli podejrzewasz wyciek wymagający natychmiastowego odcięcia, skontaktuj się z supportem; ta sama dźwignia, którą uruchamia panel, jest podpięta także do jednorazowego globalnego unieważnienia.

Zapytanie bez poprawnego nagłówka Authorization (lub parametru ?api_key=) zwróci:

{ "error": "INVALID_KEY" }

ze statusem 401. Ten sam kod obejmuje brakujące, źle sformatowane, odwołane i nieznane klucze — log audytowy w panelu je rozróżnia, ale powierzchnia API celowo tego nie robi, żeby atakujący nie mógł sondować prefiksów po statusie odpowiedzi.