Dokumentacja API

Employees API

CRUD kart pracowników powiązanych z użytkownikiem, działem, przełożonym i miejscem pracy.

GET /api/v1/employees
POST /api/v1/employees
GET /api/v1/employees/{id}
PATCH /api/v1/employees/{id}
DELETE /api/v1/employees/{id}

200 201 401 422 500

Nagłówki

Accept: application/json
Content-Type: application/json
Authorization: Bearer {token}

Wszystkie endpointy tej sekcji działają pod middleware auth:sanctum.

Pola request body

Pole Typ Wymagane przy POST Opis
user_id integer tak ID użytkownika, unikalne w tabeli employees.
department_id integer tak ID działu.
manager_employee_id integer|null nie ID przełożonego.
workplace_id integer tak ID miejsca pracy.
first_name string tak Imię pracownika.
last_name string tak Nazwisko pracownika.
position string tak Nazwa stanowiska na karcie pracownika.
is_active boolean nie Czy pracownik jest aktywny.

Przy PATCH można wysłać tylko pola, które mają zostać zmienione.

Filtry listy

Endpoint listy przyjmuje query string z filtrami:

user_id={wartosc}
department_id={wartosc}
manager_employee_id={wartosc}
workplace_id={wartosc}
is_active={wartosc}
per_page=25

Jeżeli per_page nie zostanie podane, API zwróci pełną kolekcję.

Przykładowy request

{
    "user_id": 1,
    "department_id": 1,
    "manager_employee_id": null,
    "workplace_id": 1,
    "first_name": "Jan",
    "last_name": "Kowalski",
    "position": "Backend Developer",
    "phone": "+48 123 456 789",
    "avatar_url": null,
    "employment_start_date": "2026-01-01",
    "is_active": true
}

Przykładowa odpowiedź

{
  "data": {
    "id": 1,
    "...": "pola zasobu",
    "created_at": "2026-07-21T10:00:00.000000Z",
    "updated_at": "2026-07-21T10:00:00.000000Z"
  }
}

Live test