Interfejs REST API AMAGE - użytkownicy i wydziały

Wstęp/Kontekst

Dokument opisuje operacje odczytu danych użytkowników i wydziałów udostępnione przez API AMAGE.

  • rest/amage/v1/users

  • rest/amage/v1/departments

Endpointy mają charakter tylko-odczytowy (GET).

Nagłówki autoryzacji

Każde wywołanie wymaga podpisu API w nagłówkach:

  • device-uuid – identyfikator urządzenia/klienta

  • api-key – klucz aplikacji

  • api-sign – podpis żądania zgodnie z polityką integracji

  • Content-Typeapplication/json lub text/plain

Użytkownicy

Metoda Ścieżka Body Zwraca Typowe kody

GET

/rest/amage/v1/users/count

brak

liczba (Long)

200

GET

/rest/amage/v1/users/list?page=&size=

brak

lista UserDto

200, 404

GET

/rest/amage/v1/users/get/by-uuid/{uuid}

brak

UserDetailDto

200, 400, 404

Pobranie liczby użytkowników

  • Metoda: GET

  • Ścieżka: /count

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Zwraca liczbę użytkowników.

Pobranie listy użytkowników

  • Metoda: GET

  • Ścieżka: /list

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Parametry:

  • page - RequestParam - numer strony (domyślnie 1)

  • size - RequestParam - liczba rekordów na stronie (domyślnie 50)

Przykładowy element odpowiedzi UserDto:

{
    "uuid": "f25e62ea-0100-4f4e-aad2-853cf48df2b9",
    "login": "jan.kowalski",
    "firstName": "Jan",
    "lastName": "Kowalski",
    "active": true,
    "archived": false,
    "adminUser": false,
    "mobileUser": true,
    "mobileAdmin": false,
    "wwwUser": true,
    "wwwDesktopUser": true,
    "wwwAdmin": false,
    "localUser": false,
    "serviceAccount": false,
    "departmentUuid": "a6f76486-04f7-4b3f-93ab-cb40471178d8"
}

Pobranie szczegółów użytkownika po UUID

  • Metoda: GET

  • Ścieżka: /get/by-uuid/{uuid}

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Parametry:

  • uuid - PathVariable - UUID użytkownika

Przykładowa odpowiedź UserDetailDto:

{
    "uuid": "f25e62ea-0100-4f4e-aad2-853cf48df2b9",
    "login": "jan.kowalski",
    "firstName": "Jan",
    "lastName": "Kowalski",
    "active": true,
    "archived": false,
    "adminUser": false,
    "mobileUser": true,
    "mobileAdmin": false,
    "wwwUser": true,
    "wwwDesktopUser": true,
    "wwwAdmin": false,
    "localUser": false,
    "serviceAccount": false,
    "departmentUuid": "a6f76486-04f7-4b3f-93ab-cb40471178d8",
    "lastPasswordChange": "2026-05-20T10:15:00",
    "mustChangePassword": false,
    "identifiers": [
        {
            "uuid": "f122e1f2-f35e-4f72-b693-272ad4979f87",
            "type": "QRCODE",
            "value": "USR-1001"
        }
    ],
    "employeeData": {
        "uuid": "d7ca9466-c679-43c5-bd8d-d52f1160d6f0",
        "phone": "+48 500 100 200",
        "email": "jan.kowalski@example.com",
        "position": "Brygadzista",
        "employmentNumber": "EMP-1001",
        "contractorUuid": "f9d96f2c-3b86-4e08-b7f0-29ffd2b84723",
        "signatureUploaded": true,
        "employeeRoleName": "WORKER",
        "includeInScheduling": true
    },
    "profiles": [
        {
            "uuid": "7fbf8da8-11c1-43fd-8d37-2f9a594f74b6",
            "name": "Kierownik budowy",
            "description": "Profil dostępu dla kierownika"
        }
    ]
}

Kody odpowiedzi:

  • 200 OK – zwrócono dane użytkownika.

  • 400 Bad Request – niepoprawny format UUID lub niejednoznaczny rekord.

  • 404 Not Found – użytkownik o podanym UUID nie istnieje.

Wydziały

Metoda Ścieżka Body Zwraca Typowe kody

GET

/rest/amage/v1/departments/count

brak

liczba (Long)

200

GET

/rest/amage/v1/departments/list?page=&size=

brak

lista DepartmentDto

200, 404

GET

/rest/amage/v1/departments/get/by-uuid/{uuid}

brak

DepartmentDto

200, 400, 404

Pobranie liczby wydziałów

  • Metoda: GET

  • Ścieżka: /count

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Zwraca liczbę wydziałów.

Pobranie listy wydziałów

  • Metoda: GET

  • Ścieżka: /list

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Parametry:

  • page - RequestParam - numer strony (domyślnie 1)

  • size - RequestParam - liczba rekordów na stronie (domyślnie 50)

Przykładowy element odpowiedzi DepartmentDto:

{
    "uuid": "a6f76486-04f7-4b3f-93ab-cb40471178d8",
    "name": "Budowa Kraków",
    "parentUuid": "d2cf69eb-fad9-4776-ac85-2cc7326153da",
    "root": false
}

Pobranie wydziału po UUID

  • Metoda: GET

  • Ścieżka: /get/by-uuid/{uuid}

  • Generuje: application/json

  • Wymaga: application/json, text/plain

Parametry:

  • uuid - PathVariable - UUID wydziału

Kody odpowiedzi:

  • 200 OK – zwrócono dane wydziału.

  • 400 Bad Request – niepoprawny format UUID lub niejednoznaczny rekord.

  • 404 Not Found – wydział o podanym UUID nie istnieje.

Ograniczenia i bezpieczeństwo

API użytkowników i wydziałów nie zwraca pól uwierzytelniających użytkownika (password, salt, pin, resetToken).