Strona główna › Biblioteka › REST API › Uwierzytelnianie

Uwierzytelnianie

Przegląd

API używa JWT (JSON Web Token) do uwierzytelniania. Aby uzyskać token, zaloguj się i dodaj go do nagłówka Authorization dla wszystkich chronionych żądań.

Jak działa uwierzytelnianie JWT

Aby uwierzytelnić się i wysłać żądania API, wykonaj następujące kroki:

1

Wyślij prośbę o zalogowanie

Wpisz swój adres e-mail i hasło w punkcie logowania:

POST /api/v1/auth/login
Content-Type: application/json

{
    "email": "[email protected]",
    "password": "YourPassword123"
}
2

Odbierz token JWT

Po pomyślnym zalogowaniu otrzymasz w odpowiedzi token JWT:

{
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9..."
}
3

Użyj tokena w żądaniach

Dodaj token do nagłówka Authorization z prefiksem Bearer:

GET /api/v1/user/profile
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...

Rejestracja

Rejestracja składa się z dwóch etapów. Najpierw prosisz o kod weryfikacyjny, a następnie dokończysz rejestrację za pomocą tego kodu.

1

Poproś o kod weryfikacyjny

Wyślij imię i nazwisko oraz adres e-mail. Na podany adres e-mail zostanie wysłany 6-cyfrowy kod weryfikacyjny.

POST /api/v1/auth/register
Content-Type: application/json

{
    "name": "John Doe",
    "email": "[email protected]",
    "locale": "en"  // optional, from /api/v1/languages
}

Odpowiedź:

{
    "success": true,
    "message": "Verification code sent to email"
}
2

Zakończ rejestrację

Wyślij kod weryfikacyjny wraz z hasłem i innymi danymi, aby utworzyć konto.

POST /api/v1/auth/register/verify
Content-Type: application/json

{
    "email": "[email protected]",
    "code": "123456",
    "password": "SecurePass123!",
    "country_code": "UA",  // from /api/v1/countries
    "phone": "+380501234567",  // optional
    "locale": "uk"  // optional, from /api/v1/languages
}

Odpowiedź:

{
    "success": true,
    "message": "User registered successfully",
    "user": {
        "id": 1,
        "name": "John Doe",
        "email": "[email protected]"
    }
}

Krok 1 – pola żądania

Pole Typ Wymagany Opis
name string Tak Pełne imię i nazwisko (2-255 znaków)
email string Tak Prawidłowy adres e-mail
locale string Nie Język wiadomości e-mail (z /api/languages)

Krok 2 – pola żądania

Pole Typ Wymagany Opis
email string Tak Prawidłowy adres e-mail
code string Tak 6-cyfrowy kod weryfikacyjny z wiadomości e-mail
password string Tak Min. 8 znaków, wielkie litery, małe litery, cyfry
country_code string Tak Kod kraju (z /api/countries)
phone string Nie Format międzynarodowy (+380...)
locale string Nie Preferowany język (z /api/languages)
Kod weryfikacyjny wygasa za: 10 protokół

Czas życia tokena

Tokeny JWT mają ograniczony czas ważności. Po wygaśnięciu tokena pojawi się błąd 401 i konieczne będzie ponowne zalogowanie.

Token wygasa po: 1 godzina

Pobierz aktualnego użytkownika

Aby zweryfikować swój token i uzyskać informacje o bieżącym użytkowniku:

GET /api/v1/auth/me
Authorization: Bearer YOUR_TOKEN

Odpowiedź:

{
    "id": 1,
    "name": "John Doe",
    "email": "[email protected]",
    "phone": "+380501234567",
    "locale": "en",
    "country": {
        "code": "UA",
        "phone_code": "+380"
    },
    "roles": ["ROLE_USER"],
    "is_active": true,
    "created_at": "2026-01-03T10:00:00+00:00"
}